
What is Vibe Coding
Vibe coding is the moment software development stops feeling like manual labour and starts feeling like momentum, steering with intent while the LLM handles the grind, keeping developers in flow rather than lost in files.
Vibe coding is here to stay. The term was coined in February 2025 by Andrej Karpathy. This is not a random influencer. Karpathy co-founded OpenAI, led AI at Tesla, and sits in the small group that’s defined how modern deep learning is actually done. If he’s leaning into this way of building with LLMs, it’s not a gimmick. It’s a signal.
Here is his original post on X. Read it.
Karpathy’s description of vibe coding is funny because it’s true. It captures something every developer feels when things finally click: the moment when you stop fighting your tools and just build.
So… what is vibe coding?
At its core:
Vibe coding is building software by steering with intent and momentum, and letting the LLM handle the mechanics. Less digging through code; more describing what you want and staying in flow.
It’s conversational, improvisational, and strangely powerful when the model is good enough.
“You fully give in to the vibes, embrace exponentials, and forget that the code even exists.”
This line lands because it taps into something real. We are not machines. We work better when we’re in flow, when intuition and momentum take over, when we stop micromanaging every keystroke and focus on the shape of the thing we’re trying to build. Vibe coding is basically permission to stay in that state, to steer by intent and feel, and let the tooling handle the mechanics.
“I ask for the dumbest things … because I’m too lazy to find it … I ‘Accept All’ always, I don’t read the diffs anymore.”
There’s a blunt honesty in that. So much of traditional coding is death by a thousand tiny tweaks, hunting through files for a padding value, context-switching into chores that sap momentum. The point here isn’t laziness for its own sake. It’s protecting flow. Keep your attention on the direction and the outcome, not the fiddly mechanics, so you can keep moving forward without getting derailed by distractions.
"When I get error messages I just copy paste them in with no comment, usually that fixes it."
That’s the appeal in a nutshell. Instead of dragging your brain through a thicket of stack traces and edge-case reasoning, you offload the heavy lifting. You stay at the level of intent: here’s what broke, make it unbreak. It strips away complexity and cognitive overload, so your limited time goes into the product, not the plumbing.
Okay, but is this just a weekend-project thing?
Right now, vibe coding shines for:
- prototypes
- solo developer loops
- fast UI iterations
- “I know what I want, just make it happen” tasks
In bigger systems, you still need structure, reviews, patterns, guardrails — the boring but necessary parts of real software engineering. Vibe coding doesn’t replace that. It just removes friction from the parts that don’t deserve friction.
Think of it as a new input method for building software, not a replacement for engineering discipline.
The shift in leverage
When I first heard the term, my initial reaction was that it was a passing fad. But the sheer quality and availability of coding LLMs changes the equation. They don’t just speed up the old way of working, they make a different way of working possible. You can stay focused on what you want to build, describe it in plain language, and let the model handle the grind. That shift in leverage is real, and it’s already reshaping how productive developers can be.
The original quote (full context)
"There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like "decrease the padding on the sidebar by half" because I'm too lazy to find it. I "Accept All" always, I don't read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it. The code grows beyond my usual comprehension, I'd have to really read through it for a while. Sometimes the LLMs can't fix a bug so I just work around it or ask for random changes until it goes away. It's not too bad for throwaway weekend projects, but still quite amusing. I'm building a project or webapp, but it's not really coding - I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works." Andrej Karpathy.
Discover More
The Vibe Coding Cliff
The vibe coding cliff is the moment the magic stops: when steering by intent and momentum no longer holds a system together and the LLM cannot keep the rising complexity in the air. It is the point where the vibes run out and real engineering has to step back in.

The Codebots Diagram Engine
The Codebots Diagramming Engine powers automated, standardised system modelling, reducing technical debt. Developed by Scott Lanham, it supports UI, logic, and database models by defining clear relationships between shapes and connections. Ongoing improvements, including enhanced visuals and markdown integration, ensure scalable and maintainable software design.

Platform Engineering and 27001
We recently achieved our 27001 certification! For anyone that has been on this journey, you will know how difficult a task this is. In this article, we discuss the road we took and how applying platform engineering saved the day.