Lately, my feeds, YouTube recommendations, and newsletters have been absolutely flooded with the new buzzword of the moment: vibe coding.
It’s one of those things that’s both easy and hard to define. At its core, vibe coding is about building with AI—often through voice commands—to generate code faster than we ever could by typing. The flashy demos look like something out of sci-fi: just talk, and the app builds itself.
Sounds cool, right?
Well, yes… but also no.
When I hear a startup founder say they’re vibe coding, and what they mean is they’re using AI to quickly prototype and validate product ideas, I get it. I’m actually super into that. If you already have a developer’s mindset, AI becomes a creative partner—speeding up the process, turning rough ideas into testable versions in minutes instead of hours. That’s exciting. That’s potential.
But the problem is: that’s not how most people use it.
What I’m seeing more and more is people with zero background in software development claiming they can now “build apps” just by chatting with an LLM. No understanding of architecture, no thought about long-term maintainability, no awareness of real-world trade-offs. Just… vibes.
And that’s where it loses me completely.
Don’t get me wrong—AI is already amazing. I use it every day. It’s changed the way I work, full stop. I treat it like a junior dev, a rubber duck, an idea bouncer, even a tutor. It helps me find bugs, explore alternative solutions, and get through boring boilerplate. But I still own the process.
That’s the part people miss. Code isn’t just output—it’s structure, intent, clarity, scalability. A good app isn’t just a working UI. It’s resilient. Maintainable. Testable. Easy to pick up six months later. AI is nowhere near nailing that on its own, especially not without strong developer input guiding the way.
Where AI truly struggles is in long chains of iteration—when the initial idea is slightly off, and the tweaks keep stacking. That’s when things get weird. You get bizarre solutions to simple problems, redundant code, logic that contradicts itself. It becomes harder to fix than if you just wrote it yourself.
And that’s not the AI’s fault. That’s on us—on how we use it.
If you rely on it blindly, without understanding or critique, you’re setting yourself up for chaos. You’re not building software. You’re building spaghetti. And yeah, that spaghetti might pass a quick demo—but in the real world, it’ll fall apart under pressure.
So no, I’m not anti-AI. Far from it.
But I am anti-hype. I am against the idea that anyone with a ChatGPT tab open is suddenly a developer. That mindset doesn’t just disrespect the craft—it risks flooding the internet with half-baked tools, broken products, and a whole generation of “builders” who don’t know how or why their code works.
But here’s the good news: it doesn’t have to be like this.
If vibe coding is someone’s entry point to a deeper curiosity about development—amazing. Welcome aboard. The more people who genuinely want to learn, the better for everyone. But let’s not pretend this is some magic shortcut. Real software is built with intention, understanding, and experience.
AI is a game-changer. But we’re still the ones playing the game.
Let’s not forget that.