14.2 C
New York
Tuesday, October 14, 2025

Is Vibe Coding a Bad Idea or a Problem Misunderstood?


In February 2025, AI researcher Andrej Karpathy coined a new term in his post on X to describe a new software creation technique in the AI era. That’s vibe coding

Briefly, vibe coding refers to a style of software development in which developers depend heavily on large language models (LLMs) to generate code by giving natural language prompts. 

With the assistance of AI tools, vibe coders don’t spend hours on writing every line of code manually or deeply planning architecture from the start. Instead, all they need to do is iteratively “see stuff, say stuff, run stuff, copy-paste stuff,” and wait for the code to work. 

However, the arrival of vibe coding has raised controversy among the developer community. Enthusiasts consider vibe coding as a powerful software development technique, while opponents warn of long-term risks associated with code quality and team structure. 

So, is vibe coding truly a bad idea in all cases? Does this term risk eroding the core of software engineering, or benefit developers? Let’s find out the answers in today’s blog post with Designveloper!

Is Vibe Coding a Bad Idea or a Problem Misunderstood?

Vibe coding might exist in developer spaces, along with the introduction and thriving of AI tools, until Andrej Karpathy denominated it clearly. Since he popularized the term, vibe coding has become a lightning rod among the developer community, attracting a lot of criticism about its benefits and drawbacks. 

Community opinions fall into three groups. Supporters treat vibe coding as a powerful, quick way to develop prototypes, while experienced engineers see it as an anti-pattern that trades off quality, security, and maintainability for speed. Besides, a large middle group considers using vibe coding with caution. This means using it for experiments or hobbyist projects is fine, but too risky for production. 

When it comes to “vibe coding,” forums and tech news websites like Reddit, X (formerly Twitter), and Hacker News mix criticism, cautionary tales, and practical advice. 

Vibe coding as a fun development style

Some opinions treat vibe coding as a playful, low-friction way to build small-scale apps for experiments and hobbyist projects. 

Vibe coding as a fun development style
Created by Gemini 2.5

For solo founders and non-technical creators, vibe coding democratizes software development by turning concepts into interactive prototypes in hours instead of weeks. According to a16z’s report, startups are making big investments in vibe coding tools like Replit, Cursor, or Lovable. This shift highlights the importance of vibe coding in freeing developers from some development tasks and enabling non-engineer creatives to test their ideas with ease.  

Surprisingly, vibe coding has turned into a marketable skill since its introduction. Various companies (e.g., DoorDash or Reddit) require candidates to have vibe coding experience or be familiar with AI coding tools. Even Meta allows some job candidates to leverage AI assistants in their coding interviews. 

Vibe coding as an anti-pattern

New data from Barclays shows that vibe coding tools are moving from boom to bust. 

This is not a surprising result. Although vibe coding is lowering barriers to software development and speeding up the workflow, the reality proves its existing limitations that prevent its widespread adoption.

Some Redditors warn about hallucinations and terrible outcomes that vibe coding tools may bring. They think that vibe coders, who often know nothing about computer science and app patterns, will ultimately build a failing app (in terms of security, UX design, or scalability). 

One hands-on experience of aSimpleFella spoke out about the true efficiency of vibe coding. It only works well as an AI assistant if a developer is experienced and knows exactly what he/she is doing. 

Hacker News threads also share a strong criticism from professional engineers about vibe coding. MyOutfitIsVague, a Hacker News user, stated that vibe coding is now mostly used by non-technical people who make insecure, unmaintainable, and messy code.

Others also said that “vibe” here is nothing but “not understanding what the code does,” hence posing risks of building unmaintainable or fragile software. Not to mention that auto-generated code can hide serious systemic issues, like reintroduction of known vulnerabilities, opaque code paths, or hallucinated APIs. 

AI tools, especially LLMs like OpenAI GPT or Claude, make software development accessible to everyone. But a blind faith in AI-generated code risks eroding fundamental skills (e.g., architectural thinking, debugging, or algorithmic reasoning). 

Further, some discussions on Wired raise a big question: who takes responsibility if AI-generated code produces a vulnerability or bug? AI tools don’t clearly explain how and why they generated such code. So, it’s hard for developers to formally check the code’s quality, security, and compliance. 

Is Vibe Coding a Bad Idea?

Many professional developers suppose that vibe coding is a bad idea for production. Although it’s gaining traction for its speed, issues related to code quality, security, and maintainability also surface along. 

Code quality & maintainability

The 2025 Stack Overflow Developer Survey indicated that 84% of developers are leveraging AI tools in the development workflow, with 16.9% using them to write code. However, more than 45% don’t trust the accuracy of AI-generated output. So, it’s no wonder that the majority (72.2%) of developers don’t consider vibe coding as part of their professional work. 

Missed edge cases

AI-generated code can be effective in some cases, but not in unusual or complex situations. We all know that LLMs create code or solutions by using common patterns found in training data and predicting the most likely words/phrases in a sentence. So, if they encounter domain-specific edge cases (e.g., a specific input format they don’t anticipate), they may generate wrong or insecure solutions. 

Over-enginnering

Sometimes, vibe-coded tools can generate unnecessarily complex solutions (code, functions, etc.). 

Erik Hanchett, a software engineer, experimented with vibe coding to develop a simple website. He pretended not to know anything about coding and tried to accept all the AI-generated code until the AI removed one important module from his original codebase (which could damage all his Tailwind CSS in the site). 

This kind of over-engineering adds technical debt and makes the codebase fail to work or maintain. 

Lack of documentation

When you use AI for quick development, this means your projects might be poorly documented. As much of the code isn’t written manually, developers might ignore writing comments or README files. Perhaps they may remember how and why the code works today, but without proper documentation, they may forget the code’s inner workings six months later. This also makes it hard to onboard new developers and ensure effective collaboration.

Security vulnerabilities

Security vulnerabilities

Vibe coding is a terrible idea because of its security issues.

Default insecurity

Most seasoned developers from Reddit or Hacker News indicated that the AI tools they’re using are not designed to build secure applications by default. Whether general-purpose models (like ChatGPT) or vibe-coded apps (like Lovable), they don’t inherently generate secure code unless you prompt them to include security practices. If your prompts just focus on functionality (like “making a login form”), they only develop such a feature whose code is prone to vulnerabilities. 

Hard-coded secrets

AI only works based on your requirements. So, if developers don’t manually review and audit its generated results, sensitive data (e.g., passwords, API keys, or tokens) may still exist in the source code. As a result, such confidential information can accidentally appear in public repositories and be prone to real breaches.

Skill degradation & loss of understanding

Another problem with vibe coding is that it gradually degrades coding skills.

Impact on junior developers

Vibe coding is a double-edged sword for junior developers. It accelerates and eases their development workflows by assigning heavy work to the AI. But this also means junior developers may lose opportunities to hone algorithmic thinking and problem-solving through the process of trial, error, and debugging. 

Disconnect from codebase

The over-dependence on AI makes developers gradually lose their deep understanding of how the codebase works. With AI, they become operators giving prompts instead of manually planning architecture, writing code, and solving possible issues. This makes debugging more difficult. In other words, when bugs or system errors happen, developers may not know where and how to fix them. 

Is Vibe Coding Always Bad?

Vibe coding is a bad idea for some developers. But it’s not completely terrible. Many developers and early AI adopters still find vibe coding useful in complementing their traditional coding skills, if it’s properly used.

Fast development

One Redditor shared that AI tools help them develop software 20% faster. Considered as a collaborative partner of various seasoned developers, AI handles repetitive or boilerplate parts of coding and even creates some complex stuff.  

Vibe-coding tools also succeed because they help non-engineers bring their ideas to life. They prove helpful in building proof of concepts and validating existing code. With AI, developers and even ordinary people can tackle infrastructure complexity on the backend to build minimum viable products (MVPs) more easily. 

Experimentation & creativity

Vibe coding is a good way to test the feasibility of your idea and encourage experimentation. By typing a natural language prompt (like “developing a simple habit tracker with reminders), you can see a version of the app running. 

For example, Kevin Roose, a New York Times journalist and a non-professional developer, used AI to vibe code LunchBox Buddy, a small app analyzing fridge content to suggest suitable food for his packed lunch. 

With AI-powered tools, vibe coders who aren’t formally trained can get involved in experimenting with prototypes without hiring development teams. Even when the results are imperfect and flawed, they still suggest new directions that might not appear through manual coding alone. 

Learning acceleration

If used for hobbyist projects or resolving individual-level demands, vibe coding is a learning accelerator. You can ask AI tools to create solutions and learn how the code works. This improves your understanding of syntax, patterns, and structure in software development. 

Accessibility

The advent of AI tools has lowered barriers to the software engineering industry. 

You have strong ideas for software, but don’t have years of experience coding. Vibe-coded tools powered by AI help you realize these ideas (on a small scale, of course) by taking care of coding complexities. 

The appearance of vibe coding also blurs the line between full-on coding and drag-and-drop builders, making software development more accessible to even non-technical creators.

When to Use Vibe Coding and When to Avoid It

When to Use Vibe Coding and When to Avoid It
Created by Gemini 2.5

If you want to ask us whether vibe coding is completely a bad idea, we still say no. And other seasoned developers share similar viewpoints. 

AI helps experienced developers speed up coding tasks. Meanwhile, it proves bad for non-developers or junior engineers because AI makes mistakes in software development. If you want secure, functional software, vibe coding proves inefficient and leads to potentially huge security issues and costly maintenance.

Based on the pros and cons of vibe coding, we’ll summarize some scenarios you should use and avoid vibe coding:

When to use vibe coding

Vibe coding tools act as empowering assistants:

When you have experience and knowledge in coding

An accounting manager doesn’t need to perform an accountant’s tasks, like recording, analyzing, and reporting financial transactions. But understanding these tasks helps them guide operations, delegate work, and oversee financial reporting more effectively. 

The same also applies to developers and vibe coding tools. Developers can assign repetitive, tedious tasks to AI and focus on high-value tasks. However, as AI-generated outputs may contain errors, having coding knowledge and skills helps developers review the results better. 

During early prototyping or ideation

If you want to explore ideas, vibe coding shines. It can generate a rough version of your idea instantly without the need to plan every detail. This allows you to build MVPs or concept demos in a short time.

When you want to experiment with new technologies

Do you want to try out new technologies, but don’t want to spend hours reading full documentation? AI helps reduce the learning curve by giving easy-to-understand explanations and practical examples. With AI, you can understand syntax, features, and best practices related to new libraries, frameworks, or APIs more easily. 

When you want to code small or personal apps

Vibe coding works well if you want to code small-scale apps for hobbies or personal demands. Such projects often don’t require too complex functionality and features. Therefore, AI-generated code and casual structure don’t cause much harm or issues for debugging. 

When to avoid vibe coding

However, we don’t recommend vibe coding:

When you’re still learning programming basics

Non-engineers and beginners can still vibe code for fun or to visualize how the code works. It’s a fun way to see instant results without getting stuck on syntax or setup. 

However, if you’re serious about developing an app, depending only on AI without knowing anything about core concepts may lead to countereffect. In other words, AI may develop something that looks functional but fails to work in real-world conditions. When bugs or something unexpected arise, you may not know how or where to start fixing. 

In long-term and production-ready projects

Do you want to develop production-ready software that requires secure or compliant code and high scalability? If so, don’t use vibe coding in your professional development pipeline. Although AI generates code quickly, its output may lack a consistent structure, introduce vulnerabilities, or be hard to maintain. That’s why for large-scale, long-term projects, vibe coding is a bad idea. 

Vibe Coding vs Structured Coding

Vibe coding vs Structured coding

Traditional coding, or structured coding, has existed for ages in software development. This development approach values code quality, security, maintainability, and process, therefore requiring developers to have robust coding backgrounds. Meanwhile, vibe coding emphasizes fast development and experimentation, ideal for those who have no coding skills but want to bring their software ideas to life. 

Here’s how they differ from each other:

Vibe coding

As we mentioned throughout the post, vibe coding prioritizes high speed and experimentation. Vibe coders don’t need to write a detailed development plan or architecture from scratch. Instead, they use natural language prompts to communicate with AI assistants (e.g., ChatGPT, Claude, Replit, or Lovable). 

The AI tools create or modify code based on demand. And as the name states, coding by vibes means that you “feel out” AI-generated solutions and code without much review or adjustments. Besides, project documentation is minimal or generated by AI as well, instead of being written manually by developers. 

For hobbyist projects or experimentation, where speed matters and code quality isn’t a big deal, vibe coding tools are good options. However, if you want to conduct a long-term project that requires stable maintenance and scalability, vibe coding is a bad idea. 

Structured coding

Structured coding comes with a wide range of strict requirements and well-defined steps to build secure, scalable apps. From gathering requirements and creating detailed technical specs to testing and preparing documentation, structured coding focuses on code maintainability, security, and quality. 

Developers can use AI tools as their collaborative partners to explain the codebase, write documentation faster, and more. 

However, they still rely on traditional tools (like IDEs or frameworks), manual coding, version control, and peer reviews to ensure code integrity. Further, the software must go through various review and testing stages throughout the development process before it is officially launched. 

As structured coding involves such many steps, the whole process is often slower, but more favorable in long-lived and production-ready projects. If you prioritize a scalable, high-quality solution with clear collaboration and long-term stability, choose structured coding.

Structured Coding with Designveloper

Our blog post clarified that vibe coding is a good, fun way to test your proof of concepts. But if you want to develop a production-ready solution with high quality, security, and scalability, choosing a development team that excels at structured coding is still the best. And you’re finding such a partner for your long-term project? Designveloper is here to help!

We’re the leading software development and IT consultancy company in Vietnam. Founded in 2013, we’ve completed 200+ successful projects covering mobile app, website, and SaaS development. 

Our solutions integrate different tech stacks, from common programming languages (Python, Go, Swift, etc.) and libraries/frameworks (React Native, Node.js, etc.) to emerging technologies (LangChain, OpenAI’s GPT, etc.). These solutions help clients across domains (like education, healthcare, or finance) boost productivity, increase organic traffic, attract more potential customers, and improve user experience.

We developed Swell & Switchboard, a business management platform in the solar industry, using AWS, React, and MongoDB. We also combined the right technologies (e.g., Golang, Angular, Node.js, etc.) to build the ODC platform that connects doctors and patients, especially during the COVID-19 pandemic. Further, we integrate AI and the RAG technique to build smart chatbots for financial analytics and e-commerce product recommendations. 

Our proven Agile frameworks, coupled with clear communication and dedication to excellence, have helped us deliver software on time and within budget. Wanna bring your idea to life? Contact us now and start developing!

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

0FansLike
0FollowersFollow
0FollowersFollow
0SubscribersSubscribe
- Advertisement -spot_img

CATEGORIES & TAGS

- Advertisement -spot_img

LATEST COMMENTS

Most Popular

WhatsApp