~/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 comes along that is supposed to end the profession. Frameworks, no-code, and 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. But 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. That kind of work 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. That was true in the Stack Overflow days and it is 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 existing gaps in your process at a pace you can no longer ignore. The scaled-up version of that story is your 10x developer is gated by your pipeline: code got cheap, but the pipeline that turns code into value never grew with it, so the bottleneck moves to review, deployment and decision-making.
Judgement and reading code
To judge what a model gives 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. Once you see that, calibration follows on its own. You stop trusting tone and confidence, and you go back to the only test that counts: read it yourself, understand it yourself. How it ends when you skip that test is documented in the day Claude deleted my production database. By now that story is my shortest argument for discipline.
A durable profession
Which leaves the question of 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. The skills in this cluster, reading, judging, building process, are exactly the skills becoming scarce. Bad news if you were counting on the tools to take over. Good news if you keep yours sharp.
Where this touches quality
Craft without a yardstick stays a feeling. The AI and code quality cluster makes it concrete, and the hinge piece 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.
Best entry points
- You don't have an AI problem. You have a process problem.
The diagnosis that fits most often: AI exposes the gaps in your process, at speed.
- The brilliant parrot problem: what AI actually does when it 'thinks'
What an LLM actually does when it thinks. The foundation under any realistic judgement of AI.
- The day Claude deleted my production database
The story that makes it all concrete. What happens when trust replaces discipline.
All articles in this topic
The most resilient job is eating its seed corn
New data says AI did not kill engineering jobs, engineers are the most resilient function in tech. Read the footnote: the same report shows the junior on-ramp has collapsed. Resilience now is borrowed against a senior shortage later.
The off-switch was never yours
Fable 5 did not crash. It was recalled. A US export directive pulled Anthropic's top model worldwide on June 12, for every customer at once, and no amount of retries or fallbacks would have saved you.
Your coding agent has no world model. You built it one.
Yann LeCun says the path to real intelligence runs through world models, not LLMs. He's probably right. And it explains exactly why your agent loop works.
The meter was always going to switch on
GitHub Copilot went usage-based on June 1. Developers are angry. But the anger is pointed at the bill, not the thing that created it: two years of subsidised pricing that made an uneconomic habit feel like a productivity gain.
Tokenmaxxing is what happens when you measure the wrong thing
Amazon built a leaderboard for who burns the most AI tokens. Employees gamed it. The bills exploded. Uber's CTO admitted there is no link yet between all that spending and actually shipping products. This was always going to happen.
The ceiling is made of concrete
Every rate limit, signup pause, and pricing shift of the last six months has one root cause. Not greed. Not unsustainable burn rates. Physics.
Benchmarks said frontier. Developers said "dumb."
Gemini 3.5 Flash topped MCP Atlas, Toolathlon and CharXiv on day one. By the next morning a developer on Google's own forum had documented the model looping for 776 steps. The gap between the benchmark and the work is not a bug.
Your 10x developer is gated by a 0.1x pipeline
AI made code cheap. Nobody upgraded the pipeline that turns code into shipped value. Now the bottleneck is eating your senior engineers alive.
The day Claude deleted my production database
AI coding assistants are incredibly powerful until they decide to "fix" a corruption by wiping your database. A cautionary tale about backups and why dev boxes need them too.
The bureaucracy of bots: why we are checking the checker
Deploying an AI to double-check the work of another AI produces better results. But we are unwittingly recreating the slow, complex corporate bureaucracy we tried to escape.