Vibe coding

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.

Where the term comes from

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.

What it is genuinely good at

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.

Where it stops

Everyone runs into
the same three things.

01

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.

02

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.

03

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.

The difference that matters

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.

Frequently asked questions
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 or understanding that code yourself. You steer on the result on screen instead of on what happens underneath. The term was coined in early 2025 by Andrej Karpathy, who described it as giving in to the vibes and forgetting the code exists.
Is vibe coding the same as AI-assisted programming?
No, and that difference is the whole point. With AI-assisted programming a developer uses the same tools, but reads and judges what comes out and carries responsibility for the code. With vibe coding that reading moment is absent. Same tools, a different agreement about who understands it.
Can you build a real product with vibe coding?
You can get remarkably far, and most projects I take over were surprisingly complete. What is missing sits under the bonnet: permissions at database level, a data model that grows, error handling, a test environment and version control. Those are the parts that only hurt once real customers are in it, and so exactly the parts vibe coding does not give you by itself.
Is vibe coding safe?
Not by itself. The two mistakes that are in there by default are secret keys sent from the browser, and a database without per-row permissions, so every logged-in user can reach all the data. Both are invisible as long as you are the only user, and both can be fixed in days.
Why is the term suddenly everywhere?
Because around 2025 the tools became good enough to let people without a programming background actually make something that works. What you also see growing is the second wave: people who built something and are now looking for how to turn it into something that keeps running.
Let's build

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.

Bas Voets · Webframer
0:00 / 0:00
What is vibe coding? Explanation and limits · Webframer