What is vibe coding? (the name for what you are doing)
In one sentence:Vibe coding is building software by describing what you want to an AI in plain language and letting it write the code, originally with the twist that you never read the code at all.
What it actually is
Vibe coding is building software by describing what you want to an AI in plain language and letting it write the code. Andrej Karpathy, a founding member of OpenAI who later ran AI at Tesla, coined the term in a post on X on February 2, 2025. He described a new kind of coding where you fully give in to the vibes and forget the code even exists. In his telling, he would ask his tools for small tweaks in plain English, accept every edit without reading the diffs, and paste error messages back into the chat until things worked. He said the models had gotten good enough to make this possible, and he pitched it as fun for throwaway weekend projects.
Think of humming a melody to a session musician. You can’t read sheet music, and you don’t need to. You hum, the musician plays, and you judge the result by ear. Vibe coding works the same way: you describe, your agent builds, and you judge the running app by clicking around in it. The code stays out of sight.
The term escaped that narrow original meaning within months. People began using it for any AI-directed building, careful or not, and by November 2025 Collins Dictionary had named “vibe coding” its Word of the Year, defining it broadly as using AI prompted by natural language to help write computer code. If you build apps by directing Claude Code, Cursor, or Lovable, the world now calls what you do vibe coding, whatever your habits with the diffs.
Why your AI just did this
Your agent will probably never say “vibe coding” to you. The tools are built around it anyway. Cursor’s agent mode edits a dozen files in one pass. Claude Code offers an auto-accept mode so it can keep working without stopping to ask. Lovable turns a single chat message into whole screens. Each of those defaults nudges you toward Karpathy’s original loop: accept, run, describe what’s wrong, repeat. If that’s how you’ve been building, you were vibe coding before you knew the word.
Under the single label sits a spectrum. At one end is the pure form: never read the code, judge only the running app. At the other end is AI-assisted engineering, where the AI writes most of the code and a human reads and understands every change before it ships. Most people drift along that line depending on the stakes, and the agent side of the workflow has its own name, agentic coding. Where you stand on the spectrum matters more than which word you use for it.
When you’ll run into it
Mostly you’ll meet the word around your work rather than inside it. A Reddit commenter asks if your app is “vibe coded,” and it’s rarely a compliment. Forum threads use it as shorthand for leaked API keys and layouts held together with tape. Tool homepages and news headlines reach for it too, especially since the Collins announcement put it in mainstream papers.
You’ll also feel the thing itself at two predictable moments. The first is when your app crosses the 70 percent wall and stops responding to vibes alone. The second comes deep into a long session, when prompt fatigue sets in and you realize you stopped reading anything an hour ago.
The mockery is worth decoding. Part of it is a fair observation: code nobody read is code nobody checked, and some vibe-coded apps have shipped with real security holes and plenty of AI slop. Part of it is plain gatekeeping from people annoyed that building no longer requires their credentials. Take the fair part seriously and let the rest go. Building by directing an AI is a legitimate way to make software. Shipping something to real users that nobody understands is where the trouble starts, and that risk has a fix.
What to check
- Decide which mode you’re in before you start: pure vibes is fine for a throwaway experiment, while anything with logins or payments deserves review as you go
- Ask your agent for a plain-language explanation of any change that touches money or user data before you accept it
- Commit your work before accepting a big batch of edits, so one
git revertcan undo the whole batch if it goes sideways - Schedule an occasional tour: have your agent walk you through the project folder by folder until you can say what each part does
- Notice when you’ve stopped reading entirely, and treat that as a signal to pause the session
- Keep the label drama out of your decisions: calling it vibe coding or AI-assisted engineering changes nothing about what needs review
Say it like a dev
Instead of: “I made an app but I didn’t write any of the code myself” Say: “I vibe coded the first version. Before real users touch it, I want to review the auth and payment paths.”
Instead of: “the AI did everything, I have no idea how it works” Say: “My agent wrote this file. Give me a plain-language walkthrough of what it does before I ship it.”
Instead of: “is vibe coding even real coding?” Say: “I direct an agent and review what matters. The review counts for more than the label.”
People actually ask
“Who invented the term vibe coding?”
Andrej Karpathy, a founding member of OpenAI who later ran AI at Tesla, coined it in a post on X on February 2, 2025. He described building software by accepting an AI's code without reading it and judging the result by running it. Within months the term had broadened to cover most AI-directed building, and Collins Dictionary named it Word of the Year for 2025.
“Is vibe coding bad? People keep making fun of it.”
The way of building is fine, and a lot of real software starts this way now. The mockery aims at a real failure mode: apps shipped to real users with code nobody ever reviewed. Keep the pure no-reading mode for experiments, and add review once logins or payments are involved.
“Am I a real developer if I only vibe code?”
You are making software that runs, which has always been the core of the job. The gap worth closing is understanding, and you can close it without a computer science degree. Have your agent explain its own work in plain language, and review the parts that touch users or money.
Related terms
Go deeper
Checked against
Just met this in a real session? Glim reads it in plain words.
Paste what your agent just did, a git diff, your terminal, or its summary, and Glim tells you what changed and what to check before you ship. Nothing stored.
Explain my session →