Skip to main content

What Is Vibe Coding? Collins WOTY 2025 Explained (and When It Breaks)

· 8 min read
Yassine El Haddad
Software & AI Engineer · Independent Scrimba Reviewer

Last updated:

Vibe coding is describing what you want in plain English and letting an AI assistant, Claude, ChatGPT, Cursor, GitHub Copilot, write the code. You steer by intent, not syntax. Collins Dictionary named it Word of the Year 2025, tracing the term to Andrej Karpathy's post on X in February 2025.

It works for prototypes, internal tools, and weekend projects. It breaks once your app hits production and an async bug, a stale React value, or an edge case the model never generated shows up as a stack trace you cannot read, because the AI pattern-matched your code instead of understanding it. The fix is JavaScript and React fundamentals, not a longer prompt.

Who coined vibe coding, and why is it the 2025 word of the year?​

Andrej Karpathy, formerly of OpenAI and Tesla, posted on X on February 2, 2025: "There's a new kind of coding I call 'vibe coding', where you fully give in to the vibes, embrace exponentials, and forget that the code even exists." He described his own workflow as seeing stuff, saying stuff, running stuff, and copy-pasting stuff, and later called the tweet "a shower of thoughts throwaway."

Nine months later, Collins named "vibe coding" its Word of the Year 2025, calling it a "software development technique in which source code is generated by describing the problem to be solved in natural language." That is dictionary language for what Karpathy tweeted: talk to the model, run what it gives you, keep going.

When does vibe coding break? ("vibe coding hell")​

Vibe coding hell is the 2 a.m. moment your users hit an error, Sentry lights up, and your own repo reads like a foreign language, because you never wrote it line by line. The AI did not understand your business rules. It pattern-matched them.

The triggers repeat across vibe-coded apps:

  • Async bugs that look like random UI flicker
  • undefined access that only fires on a slow network
  • Stale closures in React that make state lie to you
  • Type coercion that breaks for one customer's locale and nobody else's

None of that is a prompting problem. A better prompt regenerates the same class of bug in a new shape. The fix is knowing enough JavaScript and React to read the stack trace yourself.

How do you fix vibe coding hell?​

You backfill the fundamentals the AI skipped. Your AI-generated React component renders fine in dev, breaks silently in production, and the trace reads Cannot read properties of undefined on a line you never touched. You paste it back into the chat. The AI "fixes" it. It breaks somewhere else. The gap is React state and the JavaScript execution model, not your prompt.

Scrimba's Frontend Developer Path runs 81.6 hours through JavaScript fundamentals, async patterns, and React from basics to advanced hooks and routing, in the scrim format that makes you type the code instead of accepting a completion. Finish the JavaScript and React modules and you can read most React errors without pasting them back into a chat window. Start the path (opens in a new tab) if that gap is what is holding your projects back.

This is not about dropping AI tools. Developers who understand state and effects prompt better, review AI output faster, and stop the debugging loop instead of restarting it. For a longer method, read how to keep learning to code without depending on AI.

Is there a free way to try vibe coding with guardrails?​

Yes, and it is a genuinely good on-ramp: Scrimba's free Learn to Code with AI, taught by Guil Hernandez. It runs about 4.5 hours across three modules, 42 scrims in our count (Scrimba's own listing says 47 lessons), and you ship roughly 15 small projects by pasting ChatGPT's code into the editor, running it, then fixing what breaks.

That last part is the whole "vibe first, verify always" loop in miniature. In the "Debug, get feedback, and improve your code" lesson, Guil hands you a broken promo-code page and fixes it with ChatGPT three separate times: a script tag in the wrong place, a form that refreshes the page, and a discount that applies to any code. The third bug is your challenge to fix. Earlier in the course, Guil tells you exactly what you signed up for: "You are meant to punch above your weight in this course and work with code or take on challenges you don't fully understand." That is vibe coding, stated as a course promise instead of a meme.

It will not teach you to write a project from a blank file. It will teach you the debug loop before you have thousands of lines of AI-generated code depending on it. Browse the rest of the AI courses once you are hooked; the free track sequences into the Pro AI Engineer Path if you want agents, RAG, and the Vercel AI SDK next.

Vibe coding vs. tutorial hell: what's the difference?​

Tutorial hell is passive consumption: you watch someone else type. Vibe coding hell is passive generation: you watch an AI type. Both skip the part where you struggle in short loops and build a prediction for what the code should do.

The exit is the same for both: smaller exercises, hand-written predictions, reading error messages without autocomplete open. If you recognize the watching version of this loop, how to escape tutorial hell covers the recall drills that work for vibe coders too.

Who is vibe coding actually for?​

It fits prototyping, internal tools, personal projects, and experienced engineers who can audit AI output fast. It does not hold up alone in regulated systems, performance-critical paths you cannot profile, or teams without a review culture.

If you are career-switching, do not mistake a shipped demo for a passed technical screen. A demo gets you noticed; you still need to explain the tradeoffs, the tests, and the error handling behind it in an interview. Our portfolio projects that get hired post is a concrete checklist for that gap, and how to learn React in 2026 covers the layer where vibe-coded apps break loudest.

Frequently Asked Questions​

Turn prototypes into maintainable skills

Use Scrimba's interactive courses to backfill JavaScript and React fundamentals, the layer that keeps AI-generated apps shippable.

Explore Scrimba Pro (opens in a new tab)

Sources and notes​

If you want the next article in the series: how to learn coding without depending on AI.