I shipped more code this year than ever. I felt nothing.
I'm one of those developers who wrote code the old way. Every line by hand. No copilots. No prompts. Just raw logic, caffeine, and a blinking cursor.
And I'm glad I did.
I used to write code everywhere: at work, in my free time, when I was stressed, when I was happy. In my dreams, I still write code. I did it because creating something, fixing issues, building systems was genuinely fun.
That feeling when you'd step back and think: I'm a genius. I did that.
Back then, you weren't just assembling components. You were constructing mental models. Every function passed through layers of thought. You traced edge cases before they existed. You simulated failure before production could surprise you.
Every bug you fixed made you sharper. You didn't just write code. You forged it.
We can still do that today. The difference is: we don't have to.
The AI coding productivity paradox nobody talks about
Fast forward to 2024. In the last few months, I've produced more code than I used to ship in an entire year. The output metrics look incredible. Productivity charts would love me.
But something feels off.
It doesn't feel like I built it. It feels like the "9k Jr. developer" built it. Yes, I review it. Yes, I refine it. Yes, I understand it. But it didn't originate from that deep cognitive grind.
It feels like someone defeated the final boss for you. You get the credits, but you didn't play the game.
And that's the paradox: when creation becomes effortless, accomplishment starts to feel weightless.
Recent studies back this up. The METR AI coding study found a 43-point "expectations gap": developers predict 24% speedups but experience 19% slowdowns. The AI coding assistants productivity paradox is real. We're shipping faster while feeling slower.
Flow state is dead, long live... what exactly?
Flow state used to come naturally when writing complex systems. You'd get lost for hours, structuring logic, debugging edge cases, refining abstractions.
Now? You describe what you want. You wait. You get distracted. The AI finishes while you're checking messages, and you hit accept, accept, accept.
When you typed code, your brain and hands were synchronised. The struggle encoded the system into you. AI removes friction, but friction was the encoding mechanism.
This is what the manual programming benefits developers actually need: the cognitive encoding that happens through struggle.
The production wake-up call
A few weeks ago, something broke in production.
The old me would have known exactly where to look. This time, I had to re-read my own system like a stranger. That realisation hit harder than the bug itself.
When code you wrote yourself fails, your brain already has a map. You debug with intuition. You could almost feel it: "File XYZ, line 32. That's where it's failing."
Because the entire codebase had passed through your brain, not just your eyes. You had wrestled with it. You had lived inside it.
There's a cognitive difference between writing code, reviewing code, and understanding code. We're slowly shifting from the first to the third. That shift changes how deeply knowledge embeds itself.
The AI copilot productivity impact study findings make sense now: faster output doesn't mean deeper understanding.
I'm not complaining, I'm observing
I'm not anti-AI. (Ironically, my initials are A.I.)
AI coding tools effectiveness in 2024 is undeniable. They're not going away. They'll get better, faster, more autonomous. But the game has changed.
Maybe our role isn't to type faster anymore. Maybe it's to:
- Architect better
- Ask sharper questions
- Design deeper systems
- Understand trade-offs more clearly
- Own decisions rather than lines of code
The craftsmanship is evolving. But we have to be intentional.
Because if we fully surrender the act of building, we might accidentally surrender the joy of building too. Developer joy without AI tools was different. Not necessarily better, just different.
So what do I actually think?
This moment feels uncomfortable because we're in a transition era. The developers who wrote everything by hand feel the shift most intensely. We remember what it felt like when the friction was part of the reward.
Sometimes I catch myself sounding like a grandpa, talking about "the good old days" of writing code till 2 a.m.
The new generation might never experience that same satisfaction, but they'll probably experience a different one.
The challenge for us OGs isn't to resist AI. It's to figure out how to use it without losing ourselves in the process.
Maybe the solution is simple:
- Sometimes turn it off
- Sometimes write the complex thing yourself
- Sometimes struggle on purpose
Because struggle isn't inefficiency. Sometimes, it's meaning.
And yes, for full transparency: I wrote this article with AI help. I dictated most of it instead of typing.
Writing used to be fun too.
Does AI actually boost developer productivity? Stanford researchers and the METR study suggest the answer is more complicated than the hype suggests. The coding without AI assistants experience taught us something we're only now realising we've lost.