Vibecoding as a term is only a month or so old–but I think it captures a new and significant shift in the way we might approach coding now and in the future.

Andrej Karpathy tweeted (Xed?) about it here:

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. It’s possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like “decrease the padding on the sidebar by half” because I’m too lazy to find it. 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. The code grows beyond my usual comprehension, I’d have to really read through it for a while. Sometimes the LLMs can’t fix a bug so I just work around it or ask for random changes until it goes away. It’s not too bad for throwaway weekend projects, but still quite amusing. I’m building a project or webapp, but it’s not really coding - I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works.

I think Andrej captured something important, and as a community the AI/software engineering community has adopted and adapted its meaning.

Wikipedia has a slightly more evolved definition since Andrej’s tweet:

Vibe coding is an AI-dependent programming technique where a person describes a problem in a few sentences as a prompt to a large language model (LLM) tuned for coding. The LLM generates software, shifting the programmer’s role from manual coding to guiding, testing, and refining the AI-generated source code. Vibe coding is claimed by its advocates to allow even amateur programmers to produce software without the extensive training and skills previously required for software engineering.

As a software engineer, I’m very interested in this trend–both because it represents an entirely new way of coding (currently, sometimes helpful sometimes two-clever-by-half) and because it threatens my assumptions about coding.

But also because it enables people who have never coded to imagine building for their first time, and I welcome that.