Breadcrumb
-
- Blog
- Thoughts on Using AI, a Few Months In
Thoughts on Using AI, a Few Months In
So I've been using AI quite a bit at work lately. And when I say AI, I mean Claude Code. I'm a web developer — a Drupal developer, to be exact — and all the cool kids seem to be using Claude, so I did too.
I was skeptical. After all, some companies think AI can replace developers (OMG, that's ME!!!) — so why would I start investigating the very tool that's supposed to make me obsolete? But I also knew that if I didn't at least dip my toe in, I'd become extinct within a few months.
So I bought a subscription and started tinkering. I'm currently working on a huge migration project: taking a Drupal 10 site built with too many unnecessary modules and custom-built thingamabobs, rebuilding it in D11, and adding some new features. At the same time, I wanted to reuse most — if not all — of what I built for other projects (we currently run about 75 Drupal sites and another 200 WordPress sites). So our keyword was "recipes."
Recipes are cool (and a whole other blog post), but even though they're just YAML files and configs, they can be hugely error-prone. Add the fact that I was developing them upstream in a private Git repository, and it felt like I was producing more errors than functionality.
That's definitely where Claude came to the rescue. Indentation errors, parsing errors, missing keywords, spelling errors — Claude found those problems fast. I could prompt it with something like: "I just finished a recipe that installs content type X, it has five fields and depends on three modules. Can you review it and find any errors?" Because when I ran the recipe, it just crashed — often with super-cryptic error messages. But Claude was able to calmly explain what the problem was, and of course fix it too. I always asked for the "explain before you blindly code" approach, though. I was, after all, still the developer.
Then I gave it more responsibilities. Individual recipes were working, but when I started running them all together, new problems emerged. Apparently the order of each and every one of them matters.
I had written the importer script in a sort-of MVC pattern. Each data model got a model class with getters, setters, a constructor, and a DrupalizeData() function. Tedious work — we had 30+ paragraphs, several taxonomy vocabularies, six different content types, and more. A lot of coding. But because I wrote the first import script carefully, with all those components in place, I was able to prompt something like: "OK, now I need an 'Image with Text' paragraph that uses Media with unlimited cardinality and a rich text field where the user rights for text formats are X, Y, and Z..." — and Claude just read my existing code and wrote the next one exactly the way I would have. It sped up my development significantly, without just "writing something."
Because, as most of us know, vibe coding isn't really coding. It just makes a mess and adds sugar until it tastes fine. I'm pretty certain you need to start by yourself — or at least start small — and prompt correctly. Because I have absolutely seen Claude make errors. That's fine; the errors were found and fixed. But I found them because I'm a senior developer. Some of them might slip right through with pure vibe coding.
I also think Claude is different from, say, ChatGPT. With ChatGPT, I was always working within a single, isolated context: here's a file or code snippet, it's not working, here's the error, can you fix it? And because it's AI, it always answered — most often with total nonsense that I could spot immediately, usually because it lacked the broader context that Claude has. I give Claude access to my entire working directory — all the subfolders, everything. So Claude can dive into a Drupal Core folder, find a core module, and use the code there to figure out things I wouldn't have thought to look at myself (though debugging tools might have led me there eventually). It also knows far more about Git and Linux commands than I've ever heard of, so it can pull off what feels like magic when hunting down bugs or helping me write better code.
Another thing I noticed: Claude doesn't just give me answers — it sometimes explains why something happened. I was building a build script that would go to my private repository, fetch a composer.json (plus some other files), clone it into a working directory, set up DDEV, fetch the recipes, and then run a full site install. So many things can break on so many levels. Shell and bash scripting isn't my strongest area, but not only were we able to get it working (with multiple rounds of trial and error) — Claude also explained why certain errors occurred. Why didn't the script fetch my newest composer.json from the repository? Why didn't the patch rebuild when I tried reinstalling the project? Small things I didn't fully understand before, I now understand better.
Conclusion
Is AI the best thing since sliced bread? No. Far from it. But the AI we're using today is the worst AI we'll ever use — it will only get better. And even if AI doesn't replace me as a developer, I might be replaced by someone who knows how to use it. So dip your toe in. It's fun.
Just remember: garbage in, garbage out. It doesn't think — it's just much better at Googling than you are, and it delivers the results conversationally. But if you feed it subpar work, you'll get subpar work back. You still have to know what you're doing.
More insights
Get ready to transform your operations
Sign up for a free trial and discover a world of possibilities to elevate your outreach and engagement strategies