• Jacob Rockowitz
  • Popular Posts
  • Blog
  • Projects
  • Work
  • Other
  • Contact
  • Contact Icons
  • Resume

Drupal (AI) Playground: AI ate my work, and I need to be okay with that.

· Drupal,AI,Schema

AI ate my work

I've been experimenting with using AI to build Drupal modules for the past few months. Two weeks ago, I released a module called the AI Schema.org JSON-LD module and wrote a blog post about it. The module essentially replaces the primary outcome of my Schema.org Blueprints module, which is to enhance SEO by providing high-quality Schema.org JSON-LD markup. The AI Schema.org JSON-LD module generates Schema.org JSON-LD by having contrib modules work together to call an AI provider with a simple prompt.

This simple module, which I built in four days, supersedes my work on the Schema.org Blueprints module, which I've been working on for four years. I could resent the fact that this new AI-powered module, created using AI, was replacing me and my work, but instead, it's just changing how I view the work I'm doing.

With AI, it's easier for me to explore new ideas and take on more ambitious tasks, while knowing that the code and modules I'm creating remain flexible and extendable by humans and machines. There's a fine line between feeling like AI is eating our work, replacing it, consuming it, or improving it. We should talk about it.

What does AI mean for me?

The most immediate thing I have to think about is how I took something I had previously built, saw how AI could replace it, and had to be open to recognizing the opportunity that AI could do things differently, better, and faster. Everyone needs to lean into that reality with AI: things can get done faster and with more possibilities.

It took me a while to realize that things had changed. I built a few very simple modules to understand how AI coding agents plan, document, build, test, and maintain code. After a few weeks, I began to see the possibilities.

Even while building the AI Schema.org JSON-LD module, I knew most of the code could be generated by AI, as long as I had an AI-generated plan and required AI-generated test coverage.

As a side note, I am currently using Superpowers, "a complete software development methodology for your coding agents, built on top of a set of composable skills and some initial instructions that make sure your agent uses them." I am not committed to any particular agent skill, plugin, harness, or even an LLM; I am committed to staying open to doing things differently.

Moving forward, I need a new pair of AI-enhanced goggles to plan, execute, and implement the work. Even explaining my work to someone has changed.

The questions I am asking are changing.

  • What are we going to do? 
    Ironically, this question isn't going to be answered by AI because it ain't creative.
  • How are we going to do it? 
  • What are AI's suggestions?
  • How do we break down the steps for AI to build it?
  • What does it mean to prototype with AI quickly and easily? 

There are challenges we need to consider with opportunities that weren't even possible before AI.

I'm a member of a community called Drupal, and we build software collaboratively. That is the secret of our success: "You come for the code, you stay for the community." How we code is now changing and evolving, and our community has to evolve with it. That's something we need to talk about.

What could AI mean for the Drupal Community?

First off, the Drupal community's Drupal AI Initiative is well ahead in planning, integrating, and implementing AI. My AI Schema.org JSON-LD module builds on the initiative's amazing work, including AI Automators and Field Widget Actions, and it is worth adding the JSON Field as another key ingredient.

With the Drupal AI Initiative, we're exploring how to use AI within the software to enhance the site-building experience. We're just beginning to think (and debate) about how AI affects our community and collaboration in building and maintaining our software.

It is hard to wrap our heads around the idea of letting an AI run wild through Drupal core, even though it could fix things we've spent years building or solve problems we've struggled to solve.

For example, replacing all jQuery with plain vanilla JavaScript is something an AI could do overnight. This single task raises many questions, prompts discussion, and requires decisions.

  • What's the workflow for maintainers, contributors, and AI?
  • Are we able to provide prompts or guidelines for the conversion?
  • Do we include an agent skill in Drupal core to assist with the conversion?
  • How do we review that code?
  • Does it all become AI slop?

We need to step back from these problems and recognize that AI is here and capable of doing things no one would have expected a few years ago. AI is changing and transforming our jobs as software engineers and developers, what we're producing, how we're producing it, and what we're thinking about.

The first step might just be being open-minded about this, recognizing the new reality and the new possibilities that come with it. I am a cautiously optimistic person, and I like to use that expression when I think about AI.
 

The most optimistic outcome of DrupalCon Chicago is the Drupal AI Learners Club, which brings people together to discuss their AI experiences, share their setups, and help them level up. I like the word "level up" because it evokes a game with constantly updated rules, with new versions released daily.

People compare AIs to slot machines, but I think pinball is a more accurate analogy because it combines skill and chance, whereas slot machines are designed to rob you of your money. AI can be addictive, like gambling. Frankly, there is a significant social aspect to how AI impacts our community, and we need to keep this in mind and be open to discussing AI. I could foresee an open discussion about AI anxiety in the Drupal community.

Where do I go from here?

Based on my experience with generating the AI Schema.org JSON-LD module and working on the Schema.org Blueprints module, there are two directions to take.

First, should I use AI to review all my past work, rethink it, and reapproach it? I can use AI to clean it up, fix bugs, upgrade it, make it easier to maintain, and write tests. In essence, make it AI-ready and compatible so anyone can collaborate with AI.

The second thing I need to consider is how to maintain an AI-generated module, such as the AI Schema.org JSON-LD module. The code is absolutely up to my coding standards, with better test coverage thanks to AI. Will new features be built using AI with a human in the loop? Upgrading the code to the latest version of Drupal will most likely be done using AI.

But at the end of the day, should that code be maintained solely by AI? Should I nudge people in the issue queue to use AI to create issues and merge requests? Should people give me prompts I can use to fix bugs? It's a tricky question, and I think we have to start exploring it.
 

If we're going to let AIs write code for Drupal, they must use test-driven development, which is the ideal approach. Sometimes we, as developers, don't TDD because we don't have time or patience. AI has unlimited time and patience.

Another thing I feel strongly about when it comes to AI-written code is that no single line of code an AI writes for me goes unreviewed by me and another AI. Every time I've had an AI double-check my code or another AI's code, the feedback has been remarkable, usually catching low-level bugs and gaps in test coverage. If we go back to Extreme Programming, pair programming significantly reduces bugs and builds knowledge and understanding of an application.
 

I am skeptical that automated agents can generate code that is reliable and long-lasting, at least until someone writes a programming language designed only for AIs that is human-readable, like Code Speak. And yet, even if we start using an AI-specific programming language, how do we handle all our existing codebases?

Where do we go from here?

In every aspect of our community, we must recognize AI's potential and consider its implications. For example, AI can help with documentation, onboarding, and offboarding.

 

Documentation

Documentation is such a tricky one because AI can write tons of documentation, but is it useful? And I think everyone's struggling with that. At the same time, we in the Drupal community struggle with a lack of documentation. There are some immediate opportunities, such as having AI review all our API documentation to make it consistent and grammatically correct without changing the substance, just improving it. We can improve our style and documentation guides by providing AIs with templates for how we want documentation structured, along with guidelines and requirements: keep it brief, keep it simple, and include descriptions of complex functionality. Maybe the first step is to have AIs review the documentation people are writing and provide feedback.
 

Onboarding

To clarify, onboarding means bringing people into the community. Can we provide foundational skills to help people understand, code, and learn Drupal? Can we include prompts that guide people through Drupal's different systems? Could we have an agent on Drupal.org that reviews human- or AI-generated code, explains how it works, and identifies areas for improvement? I will even go so far as to ask whether we are open to encouraging people to "Vibe code" their first Drupal module?

 

Offboarding

We don't often talk about people leaving the community, yet we are empathetic toward burnout and to people moving on to different projects. One of Drupal's secret strengths that has allowed us to thrive for twenty-five years is that we are always welcoming to people entering and okay with them leaving.

 

By strengthening our tooling and documentation using AI, we'll make it easier for people to come and go in the community. A talented developer or non-developer could make a meaningful "vibe-coded" contribution without knowing PHP, as long as we provide the right tools and guidance via AI. That can be a huge win.

We have to be okay with this.

This is a lot to digest, accept, and process. I titled this blog post, "AI ate my work…" to acknowledge there's some anxiety here. There's an honest existential threat to software development because of AI. People's jobs and livelihoods are at stake, and it's scary. At the same time, we need to be okay with this change. We have to collaborate, support each other, and take on the challenge rather than view it as a threat.

The implications here are massive. And I'm only just talking about the software we built. It also includes the websites and applications we support. And the reality is, the websites we build, the information on these websites, what they're meant to do, and how they're meant to be interacted with are going to change completely.

AI is eating websites. LLMs are consuming our information, spitting it back at us, and changing what an organization's or company's presence or brand is in the digital world.

In Drupal, we need to address how our community, our business owners, and clients are handling AI. The AI Initiative is doing a great job of getting ahead of that by supporting AI-powered chat and search. At the same time, things are moving so fast that we have to start recognizing the possibility that, in five years, there could be no websites. Most people will use a chat interface that searches for and presents information in a sidebar, and the user never visits the source website.
 

Websites can't just be okay with that. Yet, they don't really have a choice because they have to deal with the new reality that AI is eating their websites and that AIs will control who gets what information and how they link back to your organization.
 

We gotta start talking about this. I'm going to start this conversation in my next blog post, titled "AI is eating our websites, and we need to adapt to that."

I am preparing for AI by asking questions, steadily exploring solutions, and finding answers. My last question is, as a member of the Drupal community, what are you prepared for with AI?

Subscribe
Previous
Drupal (AI) Playground: Using the AI Schema.org JSON-LD...
Next
 Return to site
Profile picture
Cancel
Cookie Use
We use cookies to improve browsing experience, security, and data collection. By accepting, you agree to the use of cookies for advertising and analytics. You can change your cookie settings at any time. Learn More
Accept all
Settings
Decline All
Cookie Settings
Necessary Cookies
These cookies enable core functionality such as security, network management, and accessibility. These cookies can’t be switched off.
Analytics Cookies
These cookies help us better understand how visitors interact with our website and help us discover errors.
Preferences Cookies
These cookies allow the website to remember choices you've made to provide enhanced functionality and personalization.
Save