Someone asked me today why I bother learning code when AI can just do it for me. I gave a short answer. Then I came here to give the real one.
"Why do you want to learn code? AI can do that for you."
Real line. From a conversation I had today.
Also shared on LinkedIn.
I enjoy learning. I enjoy building. And AI can't do either of those things for me.
That's what I said in the moment. It's true. But it's not the whole picture.
Let's be clear: AI is genuinely useful, and I use it constantly.
It generates code faster than I ever could. It catches things I miss when I'm tired or deep in tunnel vision. It gives me time back when I need to focus somewhere else. I'm not here to argue that it isn't valuable — I'd be lying, and you'd know it.
But there's a gap between "AI is useful" and "AI replaces the need to know what you're doing." That gap is where the interesting conversation lives.
AI doesn't have domain knowledge. It doesn't know your system, your users, your edge cases, or the specific way your particular codebase has evolved over time.
It can't think like a user who makes unexpected choices. It can't "act dumb" — deciding to run something in a sequence nobody planned for, or interacting with a UI in a way that technically works but reveals something broken underneath. You can ask it to write tests. It will write tests. But it doesn't know what a human would actually do with the thing you built.
That's a real limitation. And it's one that doesn't go away regardless of how good the models get, because the knowledge gap isn't about intelligence. It's about context.
Here's the argument I find more compelling than "AI can't replace you" — because that framing keeps moving and I don't want to stake my position on it.
Knowing code makes you a better director of AI.
If you can read what AI generates, you can spot the problem before you run it once. You can ask more precise questions. You can catch the assumption it made that doesn't apply to your situation. You can suggest something it didn't recognize to begin with.
The person who knows nothing about code and the person who knows a lot are getting very different outputs from the same tool. The second person is fixing issues before the first person even starts their first UX test.
That's not a small difference.
But even that argument — "knowing code makes AI more useful" — undersells why I actually keep learning.
New libraries, new frameworks, new tools. I find them genuinely fascinating. Every new thing I learn expands what I can build, what problems I can see, what I can contribute. That's not something I'm optimizing for productivity. It's something I do because it's interesting to me and because the accumulation of it compounds into capability I wouldn't have otherwise.
Learning isn't just a means to an end here. It's part of the work itself.
Maybe I don't need to learn code. I can have AI generate it. I can get functional output without deep understanding and move on.
But why would I want to when I have the passion, and the ability, to learn it myself?
That's not a rhetorical question. It's a genuine one worth sitting with — especially in a moment when "AI can do it for you" is being offered as a reason to stop reaching.