IN SHORT
- Andrej Karpathy named it in February 2025. It means describing software in words instead of writing it in code.
- It is confused with no-code builders, with chat assistants and with automation tools. All three do something else.
- Bulgarian companies are last in the EU on basic digital intensity — 38.3% against an EU average of 71.4%, per Eurostat.
- The part that got cheap is the building. Deciding what to build costs exactly what it always did.
Where the term comes from
Andrej Karpathy coined it in February 2025. He had led AI at Tesla and was a founding member of OpenAI, and he was describing his own habit of building small programs by talking to a model rather than typing code.
The phrase spread within weeks, which does not usually happen to technical terms. It spread because it named something a lot of people had quietly started doing and had no word for.
One line is enough to carry the whole idea: vibe coding is describing the software in words instead of writing it in code.
What it literally involves
You describe what the system should do. It gets built. You look at it, use it, and say what to change. The loop repeats until the thing does the job.
That is the whole mechanic, and it is worth being clear about how ordinary it is. There is no prompt syntax to learn and no magic phrasing. The description that works is the one you would give a new colleague on their first day: who uses this, what they need to see, what happens when they press the button, and what must never happen.
The difference between a good description and a bad one is not vocabulary. It is whether the decisions have been made. "A booking system" is not a description. "Clients book a thirty-minute slot, we send a reminder the day before by SMS, and two people can never hold the same slot" is one.
The three things it gets confused with
No-code builders, chat assistants and automation tools. Each is genuinely useful and none of them is this.
The confusion is not anyone's fault — the marketing for all four categories sounds identical. The way to tell them apart is to ask what you are left holding at the end, and who has to do the next piece of work.
| What you end up holding | |
|---|---|
| No-code builder | A project inside somebody else's editor, which works until your process stops matching the available blocks |
| ChatGPT or another assistant | Text in a chat window. Correct text, possibly — but somebody still has to make it run, store data and have a login |
| Zapier, Make, n8n | A working connection between two systems you already had. Useful, and not the same as the system you were missing |
| Vibe coding on a platform | Software running at an address, with your data in it, that you can change by describing the change |
Why it arrived now, and why it matters here in particular
The building got cheap enough to be worth it for problems that were previously too small to solve. In Bulgaria that gap is unusually wide, because the infrastructure is excellent and the software use is not.
Eurostat puts Bulgarian small firms last in the EU on basic digital intensity: 38.3% against an EU average of 71.4%. AI use among Bulgarian companies sits at 8.6%. At the same time, Bulgaria is first in the EU on fibre coverage, at 93.5% against an EU average of 74.1%.
That combination is the whole story. The connection is not the constraint and has not been for years. What was missing was software that fits a company of thirty people, at a price a company of thirty people can pay. There are somewhere between 340,000 and 400,000 small and medium enterprises in the country, and most of them have at least one process still running on a spreadsheet that three people open at once.
What it does well today
Internal software for a small company: things with records, forms, lists, reminders, roles and reports, where you are the only customer and you decide what correct means.
- Booking and reminders, where the rule about double-booking is yours rather than the tool's
- Quotes and job cards, where the numbering and the stages match how you already work
- Client and deadline registers, where the deadline logic is specific to your practice
- Stock and orders, where the reorder point is a decision rather than a default
What it does not do, said plainly
It does not decide what the software should do. That work is the same size it has always been, and it is the part that actually fails.
The most common way a project like this goes wrong has nothing to do with the technology. Three people describe the process three different ways, nobody notices, and the system faithfully implements one of the three. Then it gets blamed for being wrong, when what happened is that the disagreement was never resolved and got automated instead.
There are also jobs it genuinely cannot take on: regulated decisions where a wrong answer costs money, deep integration with legacy accounting software, and heavy concurrent load. Those are worth their own piece, and they have one.
RELATED
Software in five days instead of a €15,000 quote — the economics, and which part actually got cheaper
What vibe coding cannot do — the four cases where the honest answer is no
What vibe coding is — the short version, with the vocabulary and the FAQ
Tutorials — ten guides, starting with your first system