"AI has democratized software development" - we hear it everywhere. And it's true, in a way. Today I can build a complex app without knowing anything about deployment, scaling, or database optimization. Claude Code writes my code, Cursor debugs the errors.
But I often ask myself this question: have we democratized development or have we simply removed computer thinking from the equation?
This week I saw a founder - brilliant, by the way - building an entire SaaS in "vibe mode". I literally asked him: "Did you think about memory? Stack vs heap?". He looked at me like I was speaking Aramaic. And then: "The AI already thinks about these things, right?"
I don't know. Really, I don't know.
I think about CPU performance every time I write a recursive function. I wonder if it's still necessary. If the compiler, the AI, the modern runtime environment have made this awareness obsolete. Or if I'm just being a boomer saying "back in my day we really programmed".
It's like manual vs automatic transmission. Automatic transmission is objectively better - more efficient, fewer errors, more accessible. It eliminated a thought. But manual transmission forces you to stay present. You feel the engine, synchronize your foot with the sound of the clutch, you drive with the car, not just in the car.
AI-assisted coding is the automatic transmission. Comfortable, fast, democratic. You get where you want. But you don't hear the engine's sound. You don't sense when you're forcing something that shouldn't be forced.
Writing code completely by hand is the manual transmission. Total control, pure pleasure, inefficient as hell in traffic.
I still haven't figured out if I'm defending a skill that's becoming useless or if we're building an entire generation of developers driving Ferraris without knowing what happens under the hood.
I think. I reflect.