"As soon as I'm tempted to let it drive, I learn nothing, retain nothing."
When he lets AI take the wheel, his learning stops. Knowing how you learn best is crucial and I respect that. But his tweet reminded me of my first week with Rails many years ago. One command - rails generate scaffold Blog - and boom. Working blog. Complete with database migrations, controllers, views, the works. I felt like a god.
For about ten minutes.
Then came the client requests. "Can we add comments?" "What about tags?" "Why is it so slow with 10,000 posts?"
I had no idea. I'd built nothing. I'd learned nothing. The only thing that had happened was some code appeared on my screen.
I know what you're thinking: "That's different. Rails generators create 50 lines of boilerplate. AI writes entire features, algorithms, and architectural decisions. One removes tedium, the other removes thinking."
Fair point. The scale has changed dramatically. But here's what's interesting - in the early days, those 50 lines of generated code felt just as magical and just as dangerous to understanding. I remember the debates about whether generators would make us worse developers, whether we'd lose touch with the fundamentals. Some of us worried we'd forget how to write SQL or understand HTTP.
Sound familiar?
We're watching the same pattern repeat, just amplified. With Rails generators, with Stack Overflow, with Google, with IDE autocomplete, and now with AI. Each time, the community splits: those who see a shortcut to ship faster, and those who worry we're shortcutting our way out of understanding anything.
We're watching the same pattern repeat, just amplified. With Rails generators, with Stack Overflow, with Google, with IDE autocomplete, and now with AI. Each time, the community splits: those who see a shortcut to ship faster, and those who worry we're shortcutting our way out of understanding anything.
Both groups are right. And both are missing the point.
The Choice Is Still Ours
DHH shared another insight that reveals something crucial about his approach: he deliberately keeps AI in a separate window, manually retyping or copying code rather than letting it directly touch his files. For him, the moment AI handles the code directly is the moment skills start to atrophy.
He's not wrong. But notice what he's doing - he's creating deliberate friction. He's using AI as a reference tool while keeping his hands on the keyboard, his brain engaged in the actual construction.
That's the crucial next step: it's not just about using or not using AI. It's about being intentional with how we integrate it into our workflow. DHH keeps it at arm's length. Others might use different strategies such as explaining solutions back, asking for alternatives, deliberately breaking AI suggestions to understand edge cases.
The method matters less than the mindset: am I using this tool to understand better, or to understand less?
The developers who thrived with Rails weren't the ones who avoided generators. They were the ones who generated first, then asked "How does this actually work?" They peeked under the hood. They broke things intentionally. They rebuilt from scratch once they understood the patterns.
The tools didn't determine who learned and who didn't. The developers did.
Look, I get it. Not everyone has the luxury of learning slowly. You might be on a tight deadline, fighting to keep your job, or bootstrapping a startup where shipping today matters more than understanding tomorrow. The pressure is real, and "just be curious" can sound like advice from someone who's never had to choose between learning and eating.
Look, I get it. Not everyone has the luxury of learning slowly. You might be on a tight deadline, fighting to keep your job, or bootstrapping a startup where shipping today matters more than understanding tomorrow. The pressure is real, and "just be curious" can sound like advice from someone who's never had to choose between learning and eating.
But here's the thing: even under pressure, small choices compound. A two-minute "why does this work?" between tasks. Breaking one thing intentionally while waiting for a build. Asking AI for the tradeoffs, not just the solution. These micro-learning moments don't stop you from shipping - they make you ship better next time.
The learning buck has always stopped with us. It stopped with us when we copied from textbooks. It stopped with us when we pasted from Stack Overflow. And it stops with us now, whether we're prompting AI or typing every character by hand.
Because no matter how smart our tools get, they can't do the one thing that matters most: they can't learn for us. And they certainly can't make us want to learn. That drive, that curiosity, that refusal to stay surface-level - that's the one choice that will always be ours alone.