Skip to content
Notes

How my view on AI-written code changed in six months

In March I wouldn't ship a line I couldn't explain. By September I thought almost all code should be AI-generated — what changed, and what stays the human's job.

Mar 2026

Written in March 2026, when I was deliberately limiting AI-generated code. My view has changed a lot since — the September update at the end is where I've landed.

I've been thinking a lot about coding self-sufficiency lately. The temptation, especially when working on something like a CNN pipeline at 11pm on a Tuesday, is to ask Claude to generate the whole thing and move on. The code works. The deadline is met. But six months later, when I look at my own repo, I can't tell you why a particular preprocessing step exists.

So I've been changing how I work.

The rule I've been trying to keep is: if I can't explain why a line of code is there, it doesn't go in. That means writing more from scratch, asking the AI for explanations rather than implementations, and keeping a separate file of "things I asked about and now understand."

It's slower. It's also the only way the work actually compounds.

What I've changed

For my image authenticity classifier project, I now write the dataset preparation script myself, end to end, before reading any reference code. If I get stuck, I describe the problem in plain English first, then write what I think the solution should look like, then check it against an LLM. The error correction is where most of the learning happens.

For the modeling code, I'll often ask Claude to walk me through why a particular architecture choice makes sense, what trade-offs it implies, and what it would look like to choose differently. Then I implement.

This approach isn't anti-AI. It's anti-passivity. The tool is incredible. The trap is letting it do thinking that should be mine.

Update — September 2026

My view has split in two since writing this. AI has improved enough that I think almost all code should be AI-generated now — a human typing out the implementation by hand is often the bottleneck, not the accelerant. What hasn't changed is where the human has to stay: alignment between the work and the people it's for, the high-level architecture calls, industry context, and connecting the dots an AI won't — like how a single architecture decision quietly moves a company's costs in some non-obvious place. And in anything safety-critical — medical systems, security, autonomous vehicles — a human stays in the loop, full stop, regardless of how good the model is.

Comments

Loading comments…