Vibe Coding: Revolution or risk
Monday, May 5, 2025
![]() |
Richard Harris |
AI-assisted development is evolving fast, with Vibe Coding: Revolution or risk diving into how developers steer code through intent, the promise of speed and creativity, and the serious risks when human oversight disappears.
A new buzzword has entered the software development lexicon: "AI Vibe Coding." Popularized in early 2025 by AI researcher Andrej Karpathy, vibe coding refers to a coding approach where developers essentially "go with the flow" of AI code suggestions, providing only loose guidance or high-level vibes of what they want. In theory, you describe the features or fixes you need in natural language, and an AI assistant writes the code. Enthusiasts claim this makes coding more intuitive and accessible, allowing anyone with an idea to create software by simply vibing with an AI partner. Critics, however, argue that it’s more hype than substance and warn of hidden dangers in letting AI autopilot the development process.
Vibe Coding: Revolution or risk?
This article takes a deep dive into what vibe coding really is, how it works in practice, and whether it lives up to the excitement. We’ll explore examples of AI-generated projects, discuss the risks (from buggy code to security nightmares), and examine why seasoned coders aren’t throwing away their keyboards just yet. Finally, we’ll consider the cultural shift underway, when coding becomes more about guiding AI than writing logic, do we even care about the code anymore?
What exactly is "Vibe Coding"?
The term vibe programming (or vibe coding) was coined by Andrej Karpathy, former director of AI at Tesla and a prominent figure in deep learning. In a viral post on social media, Karpathy described vibe coding as fully giving in to the vibes, embracing exponentials, and forgetting that the code even exists. In plainer terms, vibe coding means leveraging a Large Language Model (LLM) as your coding partner to such an extent that you stop worrying about the code details. The developer provides high-level instructions or goals, and the AI writes the actual source code.
Unlike traditional coding where you carefully craft each line, vibe coding is conversational and iterative. The coder might say (or even speak, using voice-to-code tools) something like, "I need a sidebar with half the padding," or "Here’s an error message, fix it." The AI then generates code changes on the fly. Karpathy noted that with advanced AI coding assistants, he could build a web app by simply asking for small tweaks and accepting all the suggestions. In his words, "I barely even touch the keyboard… I ‘Accept All’ always, I don’t read the diffs anymore… I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works." This free-flowing, almost stream-of-consciousness style of development is what vibe coding encapsulates.
At its core, vibe coding shifts the role of the developer. Instead of writing precise syntax and logic, the developer becomes more of a guide or curator of the AI’s output. You describe the problem in a few sentences, maybe provide some examples or constraints, and the AI does the heavy lifting of producing code. The human then checks the result (in theory) and steers the AI with further prompts if the outcome isn’t quite right. It’s coding "by vibe" rather than by meticulous design, trusting that a powerful AI model can fill in the blanks.
How "Coding by Vibes" works in practice
A vibe-driven workflow typically involves a conversational AI coding assistant, such as GitHub Copilot Chat, Replit Ghostwriter, Cursor, or similar tools integrated into an IDE. The developer begins by describing what they want. For example: "Create a basic web app with a signup form and a database to store users." The AI will generate an initial codebase or snippet. From there, the developer iteratively refines the software by prompting the AI with requests or feedback:
- High-level prompts: Add a password strength check, build a dashboard, or add pagination.
- Specific tweaks: Ask the AI to decrease padding on a sidebar or change a button color.
- Error-driven development: Paste in an error and ask the AI to fix it.
- "YOLO" mode: Enable a mode where the AI applies all changes without approval.
Throughout this process, the coder's input is often in natural language, sometimes through voice. Karpathy used a voice interface so he could literally talk to his coding AI and have changes made in real-time. This made the experience even more hands-off, blurring the line between coding and simply describing your intentions.
In practice, vibe coding involves a lot of trust in the AI. Many proponents say the key is not to second-guess every line. The mantra "embrace exponentials" means trusting that rapid improvements in AI will cover the details. Developers admit that the code can grow beyond their usual comprehension. The mindset is, "if it works, it works," which sharply contrasts traditional development norms.

Hype vs. Reality: Does vibe coding actually work?
Is vibe coding a productivity game-changer or just a fun experiment? Early experiences are mixed, with some impressive success stories and also cautionary tales.
Successes and promise
Some developers report astonishing outcomes using vibe-driven development. One entrepreneur used vibe coding to build a multiplayer flight simulator that generated over $1 million in recurring revenue in just 17 days, claiming that nearly 100% of the code was written by AI. He used a coding assistant to handle server logic and user interface with minimal manual input.
He was so encouraged that he even organized a “Vibe Coding Game Jam,” encouraging others to build games using 80% or more AI-generated code. Hundreds participated. But this success also came with a caveat: he’s an experienced developer. His ability to read, understand, and guide the AI’s output made all the difference. The AI wrote the code, but he knew how to direct it.
Other professionals echo this. One developer described building an entire time-tracking app over a weekend using vibe coding. He wrote a product spec, prompted the AI to generate the app and test cases, and then gave the AI feedback based on errors. He called it "the worst this capability will ever be," predicting that manual coding would soon become as rare as writing in assembly language.
The hype meets reality check
However, not everyone has such a smooth ride. One AI enthusiast built a SaaS app entirely through vibe coding with zero handwritten code. Initially thrilled, he later admitted the project descended into chaos: maxed-out API usage, users bypassing subscriptions, unexplained database entries. Lacking technical knowledge, he shut the app down after discovering he couldn't control or understand the AI-generated system.
Another developer said vibe coding is amazing, but he spent a month cleaning up the tech debt it caused. The AI had produced working features but with structural problems, lack of testing, and poor maintainability.
A broader concern is that vibe coding seems to work best for those who arguably need it least, experienced developers. Skilled programmers can effectively prompt, debug, and steer the AI. Beginners, or non-technical users, often lack the context needed to direct or evaluate the code, leading to confusion and frustration when things go wrong.
Bottom line: Vibe coding can "mostly work" for small projects or prototypes. It’s fun and fast, but it’s not a silver bullet. The approach currently succeeds best either in throwaway projects or when wielded by developers who can step in to guide or fix things when needed. For high-stakes software or non-technical users, the risks quickly become apparent.
Why "Vibing" code can be dangerous
If vibe coding is essentially "let the AI handle it," what could possibly go wrong? Quite a bit, as it turns out. Here are some of the key dangers:
- Blind Trust and Hidden Bugs: Vibe coders often accept code they don’t understand. That means logical errors and bugs can slip through unnoticed. Something that "looks right" might actually be wrong.
- Security Vulnerabilities: AI models can repeat insecure coding patterns from the public training data. Hardcoded secrets, missing input validation, and outdated cryptography are all possible. Skipping security checks can lead to real-world exploits.
- The Black Box Problem: When you don’t write the code, you might stop caring how it works. This can lead to massive headaches when debugging or trying to expand the project later. Some developers describe vibe code as a "black box" they don’t even look into.
- Minimal Testing and Quality Control: The excitement of fast output can lead to minimal testing or review. AI-generated code may pass superficial checks but fail under edge cases or real-world pressure.
- Accumulated Technical Debt: AI might produce functional code, but not clean or maintainable code. Poor structure, inconsistent naming, and duplicated logic can build up, making future changes harder. You may end up rewriting everything later just to make it manageable.
These risks don’t mean vibe coding is inherently flawed. But they do mean that developers must be more vigilant in new ways. If the AI handles implementation, the human must double down on validation, testing, and oversight.

How far are we from fully AI-written programs?
Are we approaching the day when AI can build complete software on its own, start to finish, with no human oversight?
Current consensus: not yet.
AI coding assistants are powerful. They can write functions, translate code, build apps from a prompt. But they struggle with high-level architecture, ambiguous requirements, and long-term consistency. They still need humans to guide the process.
Some optimistic experts believe that in a few years, AI could produce good code from natural language specs. Others are skeptical, noting that real-world software involves more than code, it requires understanding users, managing edge cases, and adapting to change. AI isn’t great at those things yet.
And even if AI could write an entire system, few companies would deploy it without human review. Trust, liability, and risk management are huge obstacles. So for now, AI is a strong assistant, but not a solo developer.
Do we even care about code anymore?
One of the most intriguing shifts sparked by vibe coding is cultural. Developers are starting to wonder: do we still need to care about the code itself?
Traditionally, programmers took pride in writing elegant code, refactoring carefully, and debating style choices. But in vibe coding, some report spending 90% of their time in the AI chat box and almost none in the code editor. They describe code as an ephemeral by-product, caring only that the app works, not how.
Some have suggested redesigning IDEs to reflect this new mindset, replacing code-centric views with diagrams or prompt-based interfaces. This mirrors no-code tools, where users connect blocks or define behavior abstractly. But in this case, the AI is generating custom code in the background, and users might never look at it.
Still, many developers resist this shift. They see it as dangerous, even insulting. If coders become mere spectators, letting the AI "make it work" without understanding how, the discipline of software engineering is at risk. Ownership, responsibility, and creative problem-solving could be lost.
That said, software has always evolved through abstraction. Assembly gave way to higher-level languages. Hand-coding GUIs gave way to drag-and-drop builders. Each time, we shifted our focus upward without entirely abandoning the lower levels. The same may happen here: we write less code manually, but we still understand and inspect it when needed.
So do we care about code? Yes, but maybe not as much about every individual line. What we care about is whether the code works, is safe, and solves the right problem. Vibe coding pushes us to focus on results rather than syntax. But someone must still mind the code behind the curtain, even if it’s not the product manager or end user.

Why we still need skilled coders (despite the AI hype)
AI is writing more code than ever, but skilled human programmers are more essential than ever. Here’s why:
- Prompt Engineering: Good vibe coding requires clear thinking and strong prompts. You need to know how to break a task down, describe it well, and evaluate the AI’s output. That requires experience and insight.
- Quality Control and Debugging: Someone must read, test, and validate the code. An experienced developer can spot flaws, anticipate edge cases, and debug AI-generated logic when it fails.
- Security and Ethics: AI won’t think like an attacker. Humans must review the code for vulnerabilities, ethical risks, and compliance with best practices.
- Understanding the Problem: AI doesn’t understand user needs, product goals, or business logic. Developers bridge the gap between what people want and what the software should do.
- Creativity and Judgment: Critical decisions about architecture, trade-offs, and innovation still require human thought. AI can offer suggestions, but humans choose direction.
- Maintenance and Evolution: Software must adapt. Requirements change, bugs appear, and the AI may not handle these shifts on its own. Developers keep systems healthy long-term.
In short, AI handles the grunt work, but developers handle the strategy, the safety, and the soul of the software.
AI vibe coding is one of the most fascinating trends in software today. It shifts the role of the developer from coder to conductor, describing what’s needed, not writing it out line by line. It can boost productivity, democratize access to software creation, and make development feel almost magical.
But it’s not a cure-all. The risks are real: bugs, security holes, unreadable code, and systems no one understands. It works best in the hands of experts who know when to trust the AI, and when to step in. Without that judgment, vibe coding can lead to chaos.
We may be heading into an era where developers care more about what software does than how it’s written. But we’re not ready to forget about the code completely. As AI becomes a more powerful partner, the role of the human developer shifts, but doesn’t disappear. We still need people who can guide, test, secure, and maintain what the machines produce.
The future of coding might be more about prompts than keystrokes. But the best outcomes will come from those who bring deep understanding, creativity, and responsibility to the collaboration. The vibes may be strong, but the human still runs the show.

Become a subscriber of App Developer Magazine for just $5.99 a month and take advantage of all these perks.
MEMBERS GET ACCESS TO
- - Exclusive content from leaders in the industry
- - Q&A articles from industry leaders
- - Tips and tricks from the most successful developers weekly
- - Monthly issues, including all 90+ back-issues since 2012
- - Event discounts and early-bird signups
- - Gain insight from top achievers in the app store
- - Learn what tools to use, what SDK's to use, and more
Subscribe here