How we make things now · 2 min read

Why “Vibe” Became the Language of AI Coding

A word about feeling became a word about software. The connection is less strange than it sounds.

Describe the result, follow the feeling

Vibe is a useful word when you know what you want an experience to feel like before you know how to specify it. That makes it a natural fit for a conversational interface. A person can describe a layout, ask for a change and respond to what appears. The work feels like a sequence of judgments about the result. The code can recede from view even though it still determines what the software actually does.

A phrase with a specific starting point

Andrej Karpathy introduced vibe coding in a February 2025 post. The phrase quickly became shorthand for a recognizable way of making software with a language model. Its looser uses now range from playful prototyping to almost any AI-assisted programming. Those uses are culturally understandable, but keeping the narrower meaning available helps us say something more precise about a person’s relationship to the code they are producing.

The useful distinction is responsibility

Using AI does not automatically mean giving up understanding. A developer can inspect every change, test assumptions and maintain a clear model of a system while asking an assistant to do substantial work. Another person can accept a plausible-looking result without that understanding. Both may use similar tools. The difference becomes especially important when a disposable experiment becomes a service that stores data, takes payments or supports someone else’s daily work.

Agentic is a different dimension

Agentic coding describes a system that can take successive actions toward a goal. Vibe coding describes a style of human involvement. An agent can work under close supervision; a non-agentic chatbot can be used casually. Treating the terms as synonyms obscures both the tool’s capabilities and the user’s decisions. A richer vocabulary lets us discuss what changed without assuming every workflow has the same trade-offs.

The language will keep moving

Vibe already lends itself to other activities, including the emerging expression vibe researching. That extension works because the cultural idea is broader than code: fluent production can get ahead of close verification. Start with vibe coding for the definition, or prompt engineering for the more deliberate work of specifying a task. The point is not to police a word, but to keep the distinctions that help people understand their own work.

Source

Karpathy’s original post