Software craft in the AI era | Blog

~/blog/guide/craft

Software craft in the AI era

What stays true no matter what tooling arrives. On process, judgement and being able to read code.

What this guide covers

Every few years a tool arrives that is supposed to end the profession. Frameworks, no-code, now agents. The profession keeps outliving the prediction, because typing was always a small part of the work. The core is understanding what needs to happen, judging whether it is right, and carrying the consequences once it runs. This cluster is about that durable part.

I say that without nostalgia. I use the new tools constantly. The more powerful the tooling gets, the more weight lands on the fundamentals it does not replace.

What stays true

Some pieces here are about timeless technique. The magic of tries and DFS is one: making slow software fast by choosing the right data structure. How database indexes work is the other, where every index rule you memorised turns out to be one property of a B-tree restated. That kind of knowledge does not go away however good generation gets, because you have to know what you are looking for to recognise it when it appears.

The same holds for the warning in stop copy-paste engineering: whoever adopts code without understanding it is building on someone else's assumptions. True in the Stack Overflow days, still true with an agent.

It is almost always your process

When AI adoption hurts somewhere, my first question is rarely what the model got wrong. You don't have an AI problem, you have a process problem is the diagnosis that fits most often: AI introduces no new category of failure, it exposes the gaps you already had at a pace you can no longer ignore.

The scaled-up version happens after the writing. Your 10x developer is gated by your pipeline shows where the bottleneck went once code got cheap: to review, deployment and decision-making. That has since grown into a cluster of its own, listed below under the related guides.

Judgement and reading code

To judge what a model hands you, you have to understand what it is. The brilliant parrot problem explains what an LLM actually does when it thinks: next-token prediction, extraordinarily good, and fundamentally blind to truth. Your coding agent has no world model is the practical consequence, and why the coherence you experience is something you supplied.

Once you see that, calibration follows on its own. You stop trusting tone and confidence and go back to the only test that counts: read it yourself, understand it yourself. How that ends when you skip the test is the day Claude deleted my production database, by now my shortest argument for discipline.

Reading is trainable, which is what code reading practice is for: a routine for the skill everyone assumes they already have. And part of judgement is knowing when not to reach for the tool, which when not to use AI for coding works out along exposure rather than difficulty.

The numbers people quote at you

A lot of the noise in this field is measurement gone wrong. Benchmarks said frontier, developers said dumb is the gap between a leaderboard and a working day. Tokenmaxxing is what happens when a team optimises the metric instead of the outcome. The ceiling is made of concrete is about the limit nobody markets, and the meter was always going to switch on about the pricing everyone knew was coming.

There is a control question underneath all of it. The off-switch was never yours: an export directive pulled a top model worldwide in a day, and no retry logic would have saved you.

A durable profession

Which leaves where the profession itself is heading. The most resilient job is eating its seed corn looks at the numbers: engineers turn out to be the most resilient role in tech while the inflow of juniors dries up. Hiring junior developers in 2026 picks that up from the employer's side: the figure everyone quotes for the collapse is not in the paper it gets credited to, and the one large company hiring anyway shows what the job has to become for that to pay off. The skills in this cluster, reading, judging, building process, are exactly the ones becoming scarce.

Learning to program in the age of AI is the prescriptive half: what to learn first, and what you can safely skip. And who is responsible for AI-generated code is where accountability actually lands once a model wrote the line, which keeps turning out to be the person who merged it.

Where this touches quality

Craft without a yardstick stays a feeling. The AI and code quality cluster makes it concrete, and the hinge is speed got cheap, judgement didn't: the economics behind why judgement became the scarce resource. The rest of that guide is under related topics below.

Below are three starting points, then every post in this cluster, newest first.