Skip to content
CodeLifter Forum

What is vibe coding, and where did the term come from?

Staff answerWritten by CodeLifter editors · 0 replies

Short answer

Vibe coding is building software by telling an AI model what you want and accepting the code it writes without reading or fully understanding it. Andrej Karpathy, a co-founder of OpenAI, coined the term in a post on X on 2 February 2025, describing coding where you "forget that the code even exists".

CiteCodeLifter Forum, "What is vibe coding, and where did the term come from?", https://forum.codelifter.com/posts/what-is-vibe-coding-and-where-did-the-term-come-from/, accessed 2026-10-17.
Written by CodeLifter editors · Staff, CodeLifter ·
  1. Staff, CodeLifter ·

    What does vibe coding mean?

    Merriam-Webster's slang entry, last updated 4 June 2026, defines it as "writing computer code in a somewhat careless fashion, with AI assistance". The longer note on the same page says that in vibe coding "the coder does not need to understand how or why the code works, and often will have to accept that a certain number of bugs and glitches will be present."

    Two parts of that definition matter. The first is the AI model: a large language model (LLM), a program trained on large amounts of text and code that predicts what to write next, produces the code. The second is the attitude: you judge the result by whether the app seems to work, not by reading the code. Take away the second part and you have ordinary AI-assisted programming, which is a different thing.

    Where did the term come from?

    Karpathy's post set the tone. Simon Willison quotes it in full on his weblog. The key lines:

    • "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."
    • "I 'Accept All' always, I don't read the diffs anymore."
    • "When I get error messages I just copy paste them in with no comment, usually that fixes it."
    • "It's not too bad for throwaway weekend projects, but still quite amusing."

    A diff, in that quote, is the list of lines a change adds and removes. Not reading the diffs is the defining habit. Karpathy named the tools he used (Cursor Composer with a Sonnet model, and voice input), but the term was never tied to one product.

    The word spread fast. Merriam-Webster's examples include a New York Times piece of 27 February 2025 and an Ars Technica piece of 5 March 2025, and the dictionary says the practice "did not gain prominence until the beginning of 2025." It also calls the word "more jargon than slang" and warns that, being so new, it may change meaning.

    A note on the date. Merriam-Webster gives 2 February 2025. Willison's post says 6 February. The post's ID on X (1886192184808149383) decodes to 2 February 2025 at 23:17 UTC, so we use 2 February.

    Is all AI-assisted coding vibe coding?

    No, and the difference is the useful part of the definition. Willison's working definition is "building software with an LLM without reviewing the code it writes." His rule for his own production work is that he will not commit code he "couldn't explain exactly what it does to somebody else". If you review it, test it and can explain it, he writes, "that's not vibe coding, it's software development."

    Vibe coding AI-assisted programming Writing code by hand
    Who writes the code The model The model, often You
    Do you read the diff? No Yes You wrote it
    How you judge it It seems to run Tests, review, your own understanding Tests, review
    Suits Throwaway and personal tools Anything you will maintain or ship Anything
    Main risk Bugs and security holes nobody saw Trusting a review you rushed Speed

    The term now gets used loosely, sometimes for any code an AI touched. When you read a claim about vibe coding, check which meaning the writer has in mind, because the risks are very different.

    Why do people argue about it?

    Because "it seems to run" hides problems you cannot see from the outside. Three findings from the research behind the CodeLifter desk article on whether vibe coding is bad:

    • In a user study by Perry and others (arXiv 2211.03622), participants with an AI assistant wrote significantly less secure code than those without one, and were more likely to believe their code was secure.
    • Spracklen and others (arXiv 2406.10279) found code models suggesting package names that do not exist: at least 5.2% of the time for commercial models and 21.7% for open source models in their test. The thread on packages that do not exist explains why that matters.
    • METR's July 2025 study of 16 experienced open source developers found they took 19% longer with AI tools, while believing they were faster. METR has since marked those results out of date, so treat that one as a snapshot of early 2025 tools.

    None of this says you should not vibe code. It says the habit of not reading the code moves the risk onto whoever runs the app.

    When does vibe coding make sense?

    Willison's list for beginners is a fair test. The project should be low stakes, so a bug harms nobody. Watch for secrets such as API keys, which you cannot protect without understanding the code; the thread on keeping API keys out of a vibe-coded app covers that. Be careful with private data and with any service that bills by usage.

    If the project grows past that line, stop vibe coding it and start reviewing it. The thread on how to start vibe coding without shipping broken code gives the steps, and the CodeLifter glossary defines the related terms.

    Short version

    • Vibe coding means letting an AI model write code and accepting it without reading it.
    • Andrej Karpathy coined it on X on 2 February 2025; Merriam-Webster lists it as slang.
    • AI-assisted coding where you review, test and can explain the code is not vibe coding.
    • Studies link the unreviewed habit to less secure code and to invented package names.
    • It suits throwaway, low-stakes projects; anything you ship needs review.
    0
    ReplyLink

Write a reply

Plain text or simple Markdown. Links are nofollow. Your email is never shown.