Vibe Coding

Simple Definition

Vibe coding is building software by describing what you want in natural language and letting an AI coding tool write the actual code. You focus on what the software should do; the AI handles how it does it.

The term was coined by AI researcher Andrej Karpathy in early 2025 to describe a new way of building where the intent and direction — the “vibe” — matters more than writing every line yourself.

How Vibe Coding Works

  1. You describe what you want to build (“a simple expense tracker where I can add items and see a total”)
  2. The AI coding agent writes the initial code
  3. You test it and describe what needs to change (“make the total update automatically when I delete an item”)
  4. The AI updates the code
  5. You repeat until the result matches what you wanted

What Vibe Coding Is Good For

  • Prototyping — quickly testing whether an idea works
  • Personal tools — building something for your own use where perfection isn’t required
  • Learning — seeing how code is structured to understand programming concepts
  • Automations — small scripts to handle repetitive tasks
  • Side projects — turning an idea into something real without waiting to learn to code

What Vibe Coding Is Less Suited For

  • Production software used by many people where security and reliability are critical
  • Large, complex systems where understanding every part matters
  • Cases where long-term maintenance and scaling will be required

Honest Expectations

Vibe coding works better when you:

  • Break your request into small, specific pieces
  • Test frequently and describe problems clearly
  • Are willing to iterate rather than expecting perfection on the first try

Non-developers can get surprisingly far with vibe coding — but there’s still a gap between “it runs” and “it’s ready for real users.”

Continue learning

Explore related guides, tools, workflows, and prompts that help you go deeper into this topic.

See AI terms in action

Browse practical AI workflows that use the concepts in this glossary.

Last updated: