Defining “Vibe Coding” — and How to Escape the Doom Loop
Apr 25, 2025
You’ve likely noticed me sprinkling the phrase “vibe coding” into my posts lately.
So what is it?
The term went viral when one of the co-founders of OpenAI posted this post on X:
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…
— Andrej Karpathy (@karpathy) February 2, 2025
But what it is actually?
Instead of memorizing every library call, I describe a goal, hand that prompt to an AI pair-programmer, and keep nudging the draft until it behaves.
It’s how I am getting my current app off the ground even though my skills are ROUGH. (and that’s an understatement of how bad it is).
Think of it as creative directing rather than line-by-line authorship.
The doom loop (and how I escaped it)
Every vibe coder eventually meets the doom loop—the moment your AI helper gets stuck, re-tries the same failing tactic, and spirals into an unhelpful back-and-forth:
-
Error ➝ “Fix it” ➝ Same error ➝ Repeat
-
The AI is really starting to look dumb in this moment
-
Productivity ➝ Waste of Time
It can actually get pretty frustrating.
If you don’t read code — it feels impossible to debug.
What finally broke the loop?
I actually to take a look in the mirror and take a look at ME.
These tools are assistants, which means they will perform only as good as the direction they are provided.
So I had to reflect and identify how could I communicate better.
With more clarity, context, and suggested ways to solve it.
I had to become…almost like a coach.
And it worked!
Check out the original post on LinkedIn