“Not everyone can become a great artist, but a great artist can come from anywhere.”

Anton Ego, the food critic from Ratatouille

I watched Ratatouille with my son the other day. At the end, the critic Anton Ego writes a review that stuck with me. He admits that his entire worldview no longer holds. A rat has just served him the best dish of his life, and he has to do something with that.

I’ve been a software engineer for 15 years. I learned to program by spending hours reading other people’s code, pairing with colleagues, sketching systems on whiteboards, and debugging until I understood what was going wrong. Now I open Claude Code every morning, ask for a summary of yesterday’s sessions, and pick up from there. Claude Code writes code I could have written myself, sometimes faster, sometimes in ways I hadn’t considered. But the work is more than writing code. There’s an understanding underneath that you can’t quantify.

Recently I was reviewing some code from Claude Code. It was fine. But I would have written it differently, and does that matter? I don’t know the answer. After 15 years you develop a feel for code. You read a function and you sense that something is off, even when the tests are green and you can’t yet point to what it is. Usually there really is something. An assumption that bites later, a dependency that belongs somewhere else, a name that doesn’t cover what the function actually does.

With this code I felt something and I didn’t know what to do with it. It just worked. Just differently than I would have done it myself. And that’s a strange position to be in when you’ve been paid for fifteen years to spot the difference.

What bothers me most is that I don’t know whether that discomfort is about anything. Maybe my craftsmanship is sensing something I can’t yet name, and in two years it’ll turn out I was right. Or maybe my hand just isn’t on the wheel anymore and I’m interpreting that as a problem with the code. I can’t tell those two apart right now.


The Furniture Maker

Take furniture makers. IKEA changed the furniture industry without destroying it. IKEA furniture works fine. Millions of people have it in their homes. It fades faster, the materials are less durable, and after a few moves everything is loose. A handmade cabinet from a furniture maker lasts generations. Most people only notice that difference years later. At the point of purchase, everything looks fine.

I think we’re in that same phase with AI-generated code. It compiles, the tests pass. At PostNL I’ve seen what generated code looks like after a few months, when the edge cases start coming in. A colleague had generated a service that worked fine for the standard path. When we had to add error handling and retry logic, the structure wasn’t built for it. The AI had made something that worked quickly; something robust would have looked different. We rewrote a large part of it.

The furniture maker is still around. His work has just changed. The cabinets he used to build are now made in the factory. What’s left is the work where you really have to understand how wood behaves, which joints hold under load, and which ones you don’t want in a damp bathroom. The demand for that work has shrunk. And you have to be better than before to make a living from it.

I think it’s the same with software engineering. The craft remains. What disappears is the engineer who only writes code without understanding why, just like the furniture maker who only did standard work now competes with a factory.


Both True

Ego said a great artist can come from anywhere. I believe that. But the difference between IKEA and craftsmanship only becomes visible when it’s too late. Both are true, and I haven’t worked out which one weighs more.