Vibe coding is real and overrated at the same time
There's a Reddit thread that pops up every few weeks. Someone posts "you can't really rely on AI coding unless you already have a software background." Then someone else replies with a screenshot of their app and says "I made $200 in 8 hours, no coding background."
There's a Reddit thread that pops up every few weeks. Someone posts "you can't really rely on AI coding unless you already have a software background." Then someone else replies with a screenshot of their app and says "I made $200 in 8 hours, no coding background."
Both are right. And both are missing the point.
I use AI for virtually everything I build these days. I've also been writing software for over 15 years. Those two facts are connected, and the connection is the part people keep skipping over.
The $200 app is real. So is the $2,000 fix.
Yes, you can build a working app without a dev background. I've seen people do it. Some of those apps make money. That part is real.
The problem starts on day two.
Something breaks. A user does something unexpected. The app needs to handle a second currency, or time zones, or that one guy who puts emoji in his last name field. Suddenly you're staring at AI-generated code you don't understand, trying to fix behavior you can't explain.
Anyone can paint a wall. Grab a roller, pick a color, go. Moving that wall is different. You want to know where the load-bearing beams are before you start swinging.
I have a side project called Expensio, a finance tracker for Dutch freelancers. VAT logic seems simple until you start combining 0%, 9%, 21%, exempt, and foreign transaction rules. AI gives you working code for each scenario individually. Ask it to handle all of them together with the correct edge cases? You get something that works for the first three invoices and quietly miscalculates the rest.
I caught those errors because I know what VAT calculations should look like. If I didn't, I'd have shipped tax software that was subtly wrong. The kind of wrong that only shows up when the tax authority sends you a letter.
The skill moved
Vibe coding didn't remove the need for skill. It moved it.
The bottleneck used to be "can I build this?" Now it's "should I build this?" Architecture choices. Database design. Whether this button should even exist. That's where experience actually matters. AI will happily write every function you ask for. It will also write functions you shouldn't have asked for, with the same enthusiasm.
I'm building an app to make professionals visible on a map. It is called Dotmap. At one point I asked the AI to help me think through social features. It generated an entire social feed. Posts, likes, comments, the whole thing. Perfectly implemented. And completely wrong for what I was building.
The skill was saying no.
Not because the code was bad. The code was fine. But I'd seen enough products bloat themselves to death with features nobody asked for. I knew what Dotmap was supposed to be, and a social feed wasn't it. I didn't learn that from prompting technique. I learned it from 15 years of watching projects succeed and fail.
If you're new to building software, you don't have that pattern library in your head yet. Everything the AI suggests seems reasonable because you don't have a reference point for what "too much" looks like.
Debugging intent
Traditional debugging: "Why does line 47 throw an error?"
Vibe coding debugging: "Why did the AI build something different from what I meant?"
The second one is harder. You need a mental model of how software works, even if you never write a line yourself. You need to explain what you want with enough precision that the AI builds the right thing.
I have Otto, my personal AI assistant. It runs on webhooks, cron jobs, API integrations, message queues. When something goes wrong, and things go wrong constantly, I need to understand the architecture well enough to point the AI at the right problem. "It's broken" gets you nowhere. "The webhook fires but the cron job that processes the queue isn't picking up messages with this specific flag" gets you a fix in thirty seconds.
That diagnostic ability separates "I built an app" from "I run a product." And it's learnable. Just not overnight.
The maintenance trap
Everyone talks about building. Nobody talks about maintaining.
This is where the vibe coding dream gets a cold shower. Building something in a weekend is amazing. Keeping it running for six months is a different sport entirely.
Vibe-coded apps become legacy software fast. Really fast. Because you didn't write the code, you also didn't make the architectural decisions consciously. You approved them, maybe. But you didn't sit with the tradeoffs. So when something needs to change three months later, you're essentially reverse-engineering someone else's decisions. Except that "someone else" is a language model that doesn't remember why it made those choices either.
Security updates. Dependency conflicts. Performance issues that only surface under real usage. AI can help with all of these, but only if you know to ask. And know what to ask.
I run npm audit on my Expensio mobile app regularly. Last month it flagged a vulnerability in a transitive dependency. AI fixed it in two minutes. But the point is that I knew to check. I knew npm audit existed. I understood what a transitive dependency was. Without that knowledge, the vulnerability would just sit there, silently, in production.
Now multiply that across backups, monitoring, SSL certificates, API rate limits, database migrations. Each one is boring and simple. Together they're a part-time job that doesn't show up in anyone's "I built this in a weekend" post.
The honest answer
Do you need a dev background to vibe code? No. Not to start. You can build something real, something that works, something people will use. The barrier to entry collapsed. That part is genuinely new.
Do you need a dev background to build something serious with it? Yeah. Still. The definition of "serious" is doing a lot of heavy lifting in that sentence, but if you mean software that handles money, or health data, or anything where "it mostly works" isn't good enough, then yes. You need to understand what you're building.
But here's what changed: the path from "I have no idea what I'm doing" to "I understand systems well enough to build real things" got a lot shorter. You can learn by doing now, with AI as a patient tutor who writes the code while you focus on understanding why.
The line isn't "developers vs non-developers" anymore. It's people who understand systems versus people who don't. How software fits together. Why certain patterns exist. Where complexity hides.
You can learn all of that. Faster than ever, actually.
Where that leaves us
Anyone who says AI makes developers obsolete has never maintained a production app through a dependency update that breaks three things. Anyone who says vibe coding is a toy hasn't shipped anything with it.
Vibe coding works. People are making real money with it. It also requires more thinking than most people expect. Different thinking, but still thinking.
I write almost no code by hand anymore. I'm more of a developer than I've ever been.
The code was never the hard part.
I offer hands-on consulting to help you resolve technical challenges and improve your CMS implementations.
Get in touch if you'd like support diagnosing or upgrading your setup with confidence.
