Vibe Coding
The iterative, conversational way of building with a coding agent: start from an initial natural-language prompt ("build me an app that does X in Python"), let the model generate code from what it infers you want, eyeball the result, edit the prompt, and loop until the output looks right. There is no durable spec — the only record of intent is the transient prompt exchange, and the model's implementation decisions are never written down. It feels like magic and is genuinely useful for prototyping, testing, and quick edits on the fly, but it skips the software development lifecycle (planning, requirements, design, test, QA) and is nondeterministic: an underspecified request has many valid implementations, so repeated runs diverge and you can't tell why the model built what it built. Vibe coding is the foil that defines Spec-Driven Development — SDD is what you reach for when the ambiguity, non-reproducibility, or lack of an audit trail starts to cost more than the speed is worth.
Claims
- Vibe coding is the prompt→generate→inspect→edit-prompt loop with a coding agent and no durable spec; intent lives only in the transient prompt exchange. observation — definitional; the agent generates from what it infers, and the rationale for its choices is never recorded.
- An underspecified request is underdetermined: many valid
implementations exist, so the output is nondeterministic and the chosen
decision goes unrecorded.
principle — durable: ambiguity
in, variance out. The IBM Technology explainer dramatizes it as "30
different ways" to build a
/loginpage and "a hundred tries → a different result every time." This is the root cause vibe coding shares and Spec-Driven Development exists to remove. - Vibe coding is best for prototyping, testing, and quick edits; it is a poor fit where reproducibility, auditability, or maintainability matter. best practice — context: throwaway or exploratory work. It is the low-ceremony end of the Agentic Simplicity dial — match the ceremony to the stakes; don't pay for a spec on a sketch, don't skip one on a system you'll maintain.
- Vibe coding skips the software development lifecycle (planning/requirements → design → test → QA → deploy → maintain). observation — it jumps from prompt to generated code; the discipline Spec-Driven Development re-imports is exactly the lifecycle vibe coding drops.
- Iterating by re-prompting can cost more than writing the code yourself. observation — back-and-forth to pin down an underspecified intent has its own overhead; past some complexity, specifying up front (or hand-writing) is cheaper than steering a guesser.
- The prompt→generate→inspect→re-prompt loop is enough for a non-technical author to build a widely-adopted artifact — a self-described non-technical creator built a 22k-star slide skill "without writing a single line of code," via ~10–20 rounds of feedback teaching the agent their taste. observation — a second, independent source shows the loop reaching a shippable result in a taste-driven, low-stakes domain (slide design), which is exactly the prototyping/quick-edit sweet spot this page names; the durable artifact only appears when the proven workflow is frozen (Skill Extraction).
Related
- Spec-Driven Development — the disciplined alternative: prompt behavior and constraints, make the spec the primary artifact, gate stages on approval before any code exists. SDD is defined by contrast with vibe coding.
- Agentic Simplicity — vibe coding is the minimal-ceremony end of the spectrum; add structure (a spec, a plan) only where it earns its keep against outcomes.
- Eval-Driven Development — "measure, don't vibe": the same discipline of replacing an intuition ("looks right") with a written, checkable criterion, applied to behavior rather than architecture.
- Skill Extraction — what a proven vibe-coding session should end in: freeze the workflow into a skill. Vibe coding is the build phase; skill-extraction is the packaging step after it works.
- Knowledge Work as Code — the democratization thesis built on vibe coding: its biggest winners are non-programmers, and slides are the recommended on-ramp.
- Distillate: Spec-Driven Development: AI-Assisted Coding Explained (IBM Technology)
- Distillate: Stop Making PowerPoints: Vibe-Coding HTML Slides as a Skill — a non-technical creator reaching a 22k-star artifact through the vibe-coding loop, then extracting a skill from it.