← Back to notes

Who catches the wrong shape?

Three wooden dominoes joined into an impossible triangle, one tinted olive green.

Experienced programmers may now be at a disadvantage with AI. That's at least what David Heinemeier Hansson argues (link to video in the comments). For a while, he says, his own experience made him more productive, as he could tell the agents exactly how he would have built something himself. Then came the phase where describing an outcome produced better results than prescribing a path, and he was late to it, because he kept prescribing.

I'm a decent programmer, twenty-odd years of it. Nevertheless, I never was in phase one. To be honest, I have never much enjoyed the writing of code. I just want to make things happen. Which meant that for most of my working life the bottleneck was coding. This horrifying, nightmarish groundhog day like loop of writing - running - checking - debugging. I constantly had more ideas than I could build, and that gap was the frustrating part of the job rather than the work itself.

So when agents arrived I had nothing to let go of. There was no beloved craft I had to stop practising and no religious habit to unlearn. I went straight to describing outcomes, because it was the only thing I had ever wanted to do in the first place.

That makes me an awkward case for DHH's argument. His reason for saying programmers do worse is that many of them are not good product managers. They don't know what the thing should do, for whom, in what order. That's a fair observation about a skill that is missing, and I've seen it often enough. But it isn't an argument that programming knowledge has become a liability. It says that one skill without the other doesn't get you far, which was true before any of this.

Where the knowledge earns itself back is in judging what comes back.

A while ago a colleague built a feature with an agent. It worked, the tests passed, code reviewed by another human developer without remarks. But it added a heavy amount of processing for something small, and that stood out to me straight away.

Out of curiosity I ran the same task through the agent myself, with probably the same instructions, and got the same result. The agent hadn't failed and my colleague hadn't done anything careless, as the task as described simply led there. What changed the outcome completely was one sentence I made on the prompt, and after that the result was excellent.

Which leaves the question DHH doesn't get to. If experience is what catches the wrong shape, and experience is now the disadvantage, who is left to catch it?