Ian Greenough

Founding Product Engineer
← Back to blog

The Confirmation Bias Surrounding LLMs for Code Generation

AIClaudeClaude CodeProduct Engineering

There's a confirmation bias surrounding LLMs for code generation. But before we even get into that, let's talk about Aliens; James Cameron's 1986 sci-fi masterpiece.

There's a scene I keep coming back to. Ripley approaches the foreman and asks, "Is there anything I can do?" He replies: "I don't know. Is there anything you can do?" Ripley climbs into a Power Loader and starts slinging cargo no human could move unassisted. She gets the job, and she gets the job done. Keep that image in mind.

A couple of weeks ago, I decided to go full send and try to build a simple but robust e-commerce site using Claude Code, kicked off from my phone in a taxi to the airport. For four and a half days I watched it chugging along, as I occasionally hit Enter or Tab. Finally, I ran the application. It collapsed into a sad pile of errors.

My conclusion: LLMs are not ready for production.

The reality: I did not get the job done.

Now, at the time I was using Claude Code's Pro plan with Sonnet to avoid burning through my quota. I was optimizing for cost, not capability. And under the hood, optimizing for insecurity. I wanted it to fail; my bias was confirmed. I was still necessary.

But I had a nagging feeling that I was wrong.

So a couple weeks later, I upgraded to the Max plan. More importantly, I changed my approach. I wrote thorough specs, broke them into atomic tasks, and I reviewed those with Claude, Gemini, or ChatGPT. Once I had a clear path, I set Claude Code's Opus model loose on each task with a Max account, committing frequently and using TDD.

The results were astounding. I'm now one-shotting frontend, backend, and deploys using multi-agentic setups. Days of Sonnet work completed in hours. Tasks that used to take a week are now done before lunch. Tested, stable code built to conventions defined in CLAUDE.md files.

The tool isn't the bottleneck. The process is.

Let's be honest: many engineers' bias against these tools comes from using the weakest models without the rigor they'd apply to their own process. Thorough specs, atomic tasks, clean commits, stable pipelines. Once those are in place, AI-assisted coding is a whole other animal.

I'll go further. A lot of professionals don't want these tools to succeed. There's comfort in dismissing them. But you have to ask yourself: do you want to succeed?

Because when used well, when used professionally, these tools allow you to lift ten times the weight, move ten times as fast, and work in hostile environments. But you have to know how to operate the machine. Backend devs become full stack. Frontend engineers ship APIs. PMs build prototypes that actually run. Engineers manage their own products (and projects).

The engineers who thrive won't be the ones who resisted the longest. They'll be the ones who strapped themselves into the Power Loader and went to work.

Too many people look at Claude and see the Alien Queen: something terrifying that's coming to destroy them. They've got it backwards. Claude is the Power Loader. It's the thing you strap into so you get the job, and get the job done.