Jahanzaib
Production

Vibe Coding

Andrej Karpathy's term for building software by describing what you want to an AI and iterating on the result without reading every line.

Last updated: April 26, 2026

Definition

Vibe coding is the practice of writing software primarily by talking to an AI: describe the intent, accept the output, run it, describe what to change next. Karpathy introduced the term in February 2025 to describe how he was building weekend projects with Cursor, Claude Code, and Aider: "fully give in to the vibes, embrace exponentials, and forget that the code even exists." The term spread quickly because it named something many developers were already doing without admitting it. Vibe coding works well for prototypes, throwaway scripts, weekend hacks, and exploratory work where the cost of code you do not understand is low.

Vibe coding is not a recommendation for production work. Karpathy's original framing was explicitly about throwaway projects. The version of this practice for production code has a different name: agentic engineering. The distinction matters because a year of vibe-coded production code has accumulated debt that nobody on the team understands and that future agents will struggle to refactor safely. The reasonable production variant is: have AI write the code, then read it, then test it, then commit it. That is closer to traditional code review with an AI author than to "give in to the vibes."

When To Use

Use the vibe coding mindset for prototypes, weekend projects, and learning new languages. Switch to agentic engineering discipline (review every diff, write tests, document decisions) the moment the code touches production.

Sources

Related Terms

Building with Vibe Coding?

I've shipped this pattern in real production systems. If you want a second pair of eyes on your architecture, that's what I do.