What is vibe coding, exactly?
MIT Technology Review Explains: Let our writers untangle the complex, messy world of technology to help you understand what’s coming next. You can read more from the series here. When OpenAI cofounder Andrej Karpathy excitedly took to X back in February to post about his new hobby, he probably had no idea he was about…

MIT Technology Review Explains: Let our writers untangle the complex, messy world of technology to help you understand what’s coming next. You can read more from the series here.
When OpenAI cofounder Andrej Karpathy excitedly took to X back in February to post about his new hobby, he probably had no idea he was about to coin a phrase that encapsulated an entire movement steadily gaining momentum across the world.
“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 said. “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.”
If this all sounds very different from poring over lines of code, that’s because Karpathy was talking about a particular style of coding with AI assistance. His words struck a chord among software developers and enthusiastic amateurs alike. In the months since, his post has sparked think pieces and impassioned debates across the internet. But what exactly is vibe coding? Who does it benefit, and what’s its likely future?
So, what is it?
To truly understand vibe coding, it’s important to note that while the term may be new, the coding technology behind it isn’t. For the past few years, general-purpose chatbots like Anthropic’s Claude, OpenAI’s ChatGPT, and Google DeepMind’s Gemini have been getting better at writing code to build software, including games, websites, and apps. But it’s the recent advent of specially created AI coding assistants, including Cursor’s Chat (previously known as Composer) and GitHub Copilot, that really ushered in vibe coding. These assistants can make real-time predictions about what you’re trying to do and offer intuitive suggestions to make it easier than ever to create software, even if you’ve never written code before.
“Over the past three or four years, these AI autocomplete tools have become better and better—they started off completing single lines of code and can now rewrite an entire file for you, or create new components,” says Barron Webster, a software designer at the interface company Sandbar. “The remit of what you can take your hands off the wheel and let the machine do is continually growing over time.”
… and what doesn’t count as vibe coding?
But not all AI-assisted coding is vibe coding. To truly vibe-code, you have to be prepared to let the AI fully take control and refrain from checking and directly tweaking the code it generates as you go along—surrendering to the vibes. In Karpathy’s longer post he explained that when he’s vibe coding, he breezily accepts all suggestions that Cursor’s tool gives him and puts his trust in its ability to fix its own mistakes. “When I get error messages I just copy paste them in with no comment, usually that fixes it,” he wrote. “Sometimes the LLMs can’t fix a bug so I just work around it or ask for random changes until it goes away.”
Essentially, vibe coding is interacting with a code base through prompts, so that the engineer’s role is simply to converse with the tool and examine its outcome, explains Sergey Tselovalnikov, a software engineer at the design platform Canva who regularly uses AI assistive tools. “Andrej is a bit of an influencer, and he defined that term very intentionally,” he says. “He just posted a joke of sorts, but because he highlighted what was going on in the industry more or less correctly, it just took off.”
Is vibe coding right for my project?
The people most likely to benefit from vibe coding fall into two camps, says Tobin South, an AI security researcher at the MIT Media Lab. One is people like Karpathy, who already have a good grasp of coding and know how to fix any errors if anything goes seriously wrong if they’re using it to build anything important; the other is absolute amateurs with little to no coding experience. “I’d define vibe coding as having a vision that you can’t execute, but AI can,” he says.
The major appeal of vibe coding lies in how easy and accessible it is. The AI assistive tools make it much quicker to produce code and to whip up small projects like a prototype website, game, or web app than it would be for a human. But while this hands-off approach may make sense when it comes to creating these kinds of low-stakes, simple digital products, it’s far riskier in bigger, more complex systems where the stakes are much higher. Because AI coding tools are powered by LLMs, the code they generate is just as likely to contain errors as the answers LLM-powered chatbots spit out. That’s a big problem if what you’re trying to code requires access to large databases of information, security measures to protect that data, large numbers of users, or data inputted from users, says Tselovalnikov.
“Vibe coding can make a lot of errors and problems, but in the environment of a tiny game or a small app that doesn’t store any data, it’s a lot less relevant,” he says. “I’d personally be a lot more careful with larger projects, because if you don’t know if there are any security vulnerabilities and you didn’t test the code yourself, that’s very dangerous.”
This is particularly applicable to non-coders. Leo, a user on X and a champion of vibe coding, found this out the hard way when he posted about having built a SaaS application (software that runs over the internet, instead of being downloaded to a user’s device) solely using Cursor last month. The post immediately caught the attention of mischievous web users, who instantly started poking holes in his service’s security. “Guys, I’m under attack,” he posted two days later. “I’m not technical, so this is taking me longer than usual to figure out. For now, I will stop sharing what I do publicly on X. There are just some weird ppl out there.”
Ultimately, while vibe coding can help make a vague idea for a website or a game into a reality, it can’t make it reliable or secure. But there are already plenty of existing tools to do this, helping you with everything from creating databases to adding authentication measures. So while you can’t vibe-code real, valuable, secure, robust apps into existence, it can be a useful place to start so long as you’re careful, says South.
He believes that AI-assisted coding assistants are going to keep becoming more capable and that web hosting companies will keep integrating AI into their tools to make them easier to use, meaning the barriers to creating software will keep falling. “It takes the cost of producing software and dramatically reduces it to an exponential degree,” he says. “The world will have to adapt to this new reality. It isn’t going anywhere.”