What is
vibe coding?
Vibe coding is making software by describing what you want in plain language, and letting an AI model write the code without reading it yourself. You steer on what you see on screen instead of on what happens underneath. Below: where the term comes from, what it is genuinely good at, and the point where practically every vibe-coded project hits the same wall.
A joke that stuck.
Andrej Karpathy, co-founder of OpenAI, wrote a short post in early 2025 about a way of programming where you give in to the vibes and forget the code even exists. He meant it half in jest, about weekend projects where it does not matter. The term stuck because it described exactly what thousands of people were doing at that moment.
What has changed since is the stakes. A year ago it was about weekend projects. Now businesses run on it, with customer data going in and invoices coming out. That is a fine development, only then different requirements apply than to a weekend project, and those requirements do not come along by themselves.
Do not underestimate it.
I earn my living finishing vibe-coded projects, so you would expect me to trash the tools. That would be nonsense. For four things they are the best tool there is.
Testing an idea before you believe in it
In a weekend there is something you can show instead of explain. Reactions to a working screen are more honest than reactions to a description, and you need no budget for it.
Finding out what you actually want
Most projects run aground on unclear wishes, not on technology. Clicking through your own idea yourself produces sharper requirements than three workshops. That is the most valuable thing vibe coding delivers.
Internal tooling for a handful of people
A list, a calculator, an overview three colleagues use. No customer data, no payments, no outside world. Exactly where the weak spots do not matter.
Loose pieces you cannot build yourself
A script that converts a file, a one-off import, a prototype of a screen you show a developer. Throwaway work where throwaway quality is perfectly fine.
Everyone runs into
the same three things.
Every change breaks something else
The model no longer sees your project in one go and picks which files to look at itself. Whatever falls outside that does not exist at that moment. The more you build, the smaller the part it can oversee.
Security was never explicitly put in
Keys the browser sends along, permissions that only live in the screen and a database where everyone can reach everything. Invisible as long as you are the only user, and that is precisely the problem.
Nobody can explain how it works
Thousands of lines you did not write and did not read. Fine as long as it works. At the first outage you cannot search through something whose structure you do not know.
The moment this starts to pinch is recognisable: five signs your prototype is hitting its limit. Want to know where you stand right now, then run through the nine checks; you can do those yourself, without a developer.
Vibe coding is not a technology, it is an agreement.
I use the same AI tools as everyone else. The difference is not the tool but what happens after: I read what comes out, because I am the one who has to maintain it in two years. With vibe coding that reading moment is absent, and that is a perfectly good choice as long as nobody puts anything important on it.
So the question is never whether you may build with AI. The question is who can explain how your software works at the moment it goes wrong, and whether that answer may still be ‘nobody’ once there are customers in it.
Further reading: the tools side by side or what it takes to make a prototype production-ready.
What is vibe coding?
Is vibe coding the same as AI-assisted programming?
Can you build a real product with vibe coding?
Is vibe coding safe?
Why is the term suddenly everywhere?
Tell me what you
want to build.
A half-hour call. You get an honest answer about what it costs, how long it takes and whether building it is smart at all.