Vibe Coding’s Rapid Rise
Vibe Coding has ignited a storm of discussion about AI programming. Is it a creative tool empowering non-technical users, or a sugary trap leading to skill degradation for developers? This article dissects the dual nature of AI programming through real cases from Tencent employees and recent research from Anthropic, revealing that the key variable behind technological inclusivity is not the tool itself, but the user’s mindset and the alignment with business scenarios.

Someone asked me, “I created a small program with Cursor, does that count as Vibe Coding?”
I replied, “Have you used Cursor?”
“Yes, but I don’t understand many parts; I basically rely on AI to help me fix it.”
“Then you’re vibing pretty well.”
“So am I a programmer now?”
Ah, therein lies the problem.
The term Vibe Coding became popular so quickly that most people haven’t fully grasped what it really is before showcasing their results online. Some say it’s the beginning of “everyone is a programmer”; others claim it’s the “biggest scam of the AI era”; and some argue it’s rendering an entire generation of developers obsolete.
I believe these judgments are somewhat exaggerated.
Vibe Coding is neither miraculous nor useless. It has simply been misunderstood.
A Memorable Example
Recently, an article circulated widely within Tencent, discussing the fun projects employees created using Vibe Coding.
One product planner, @lexis, with a background in arts and no coding experience, used Cursor to create a dining app called “饭之” in three months, which over 2,000 Tencent employees now use, allowing her to meet many interesting people.

Another content operator, @yufang, spent just two hours using Codebuddy and WeChat Cloud Development to create a health tracking mini-program. She expressed immense satisfaction when she saw her mini-program running for the first time.

A 3D character designer, @kak, developed an AI short film production workstation that runs the entire process from script to final cut with just a single input, incorporating a six-step workflow and seven video models.

None of these individuals are traditional “programmers”.
Yet, what they created is genuinely functional.
So, does Vibe Coding truly make “everyone a product manager” possible?
I think it is possible, but you must first understand one thing.
What You Think of as Vibe Coding Might Not Be Vibe Coding
This is where I find the current discussions most confusing.
Many people conflate “using AI to assist in coding” with “Vibe Coding”. These are vastly different concepts.

Zhang Senseng, head of the technology platform at Ping An Insurance, provided a clear distinction: AI Coding involves developers using AI to enhance efficiency, with the entire process still led by architects and engineers, where AI acts as a “role programmer”; whereas Vibe Coding allows non-technical individuals to describe their intentions in natural language for AI to generate code end-to-end.
In other words, Cursor helps you complete code, and Claude Code assists in restructuring logic; that is AI Coding. When you tell AI, “Help me create a dining app,” and wait for the results, that is Vibe Coding.
The target users differ, the product logic varies, and the evaluation standards are entirely distinct.
Mixing these two discussions is akin to confusing “knowing how to drive” with “knowing how to repair a car”—you might not need to fix a car, but you should know what kind of car you are driving and where you are going.
Who Are the Users of Vibe Coding?
They are not “novices”.
In my view, this term is somewhat derogatory. The people genuinely using Vibe Coding typically have specific needs and creative motivations but are hindered by technical barriers.
Product managers, operators, designers, and content creators—they are not unintelligent; they simply lack the time and motivation to learn programming systematically.
The cases in that Tencent article illustrate this point perfectly. Those who created interesting projects were not just “trying things out”; they all had very specific pain points:
A visual designer, passionate about sushi, created a sushi rating app; a client developer, frustrated with the poor iOS photo album search function, built a local photo search tool; a content operator launched a health tracking tool in just two hours.
Strong creative motivation + clear use cases are the true fuel of Vibe Coding.
Without these two elements, even the best tools are merely toys.
But There’s One Thing I Think Everyone Underestimates
Anthropic—the company behind Claude—recently published a paper titled “How AI Impacts Skill Formation”.
Honestly, when this paper came out, I was taken aback.
They are the creators of Claude, one of the most popular tools in the Vibe Coding community. Yet they came forward with data showing that over-reliance on AI for coding can lead to skill degradation.
The experiment was straightforward: over 50 experienced Python programmers were divided into two groups. One group could only refer to documentation and Google, while the other could use AI assistants. After the tasks, they took a uniform exam.
The result: the AI group scored an average of 17% lower than the manual group.
Ironically, the time taken to complete the tasks was nearly the same—AI group averaged 23 minutes, while the manual group took 24.7 minutes.
They saved 1.7 minutes at the cost of a 17% skill degradation. This calculation is not favorable.
Why does this happen? The paper mentioned a concept called “interaction tax”.
You might think using AI saves time, but in reality, you spend time writing prompts, waiting for generation, validating results, and iterating fixes. Some individuals spent 30% of their time on a 35-minute task just figuring out how to communicate with AI.
Moreover, AI is too smooth.
The manual group averaged three errors each, forcing them to stop, focus on error messages, consult documentation, and understand why. The AI group averaged only one error, with their code running smoothly, but they retained nothing in their minds.
The paper states, “Encountering and independently solving errors is a key part of skill formation.”
AI eliminates friction. Yet, friction is precisely where learning occurs.
Using AI: Why Do Some Excel While Others Falter?
This is the most intriguing part of the paper.
Researchers analyzed screen recordings and categorized the programmers in the AI group into six types.
The three low-scoring types I call “AI Drones”:
- Hands-off Type—They throw the task at AI, copy-paste the result, and submit. Fastest speed, zero learning.
- Half-hearted Type—They start attempting to do it themselves but give up at the first error, saying, “Forget it, AI, you do it,” and completely relax.
- Blind Trial-and-Error Type—They encounter bugs without checking error messages, screenshotting and sending to AI, running the code without understanding, leading to the worst outcomes.

The three high-scoring types I call “AI Drivers”:
- Thorough Inquirer Type—They rarely let AI write code, asking conceptual questions like, “Why use await?” or “What is this principle?” They understand before they write themselves, treating AI as a mentor, not an outsourcer.
- Pre-emptive Type—They let AI generate code but inquire before pasting: “Explain why this line is written this way?” They convert AI’s output into their own knowledge.
- Collaborative Type—They require in the prompt: “Write code and explain each step’s logic.” They force AI to output reasoning chains, aiding their understanding and subsequent debugging.
Using the same AI, the score difference exceeded 40%.
The distinction lies not in the tool, but in the approach.
The Ceiling of Vibe Coding is Lower Than You Think
At this point, some might say, “That’s a programmer’s issue; I don’t need to learn programming, I just want AI to help me create things.”
This logic is valid, but there’s a prerequisite—you must clearly understand what you want to create and the complexity involved.
Industry experts have provided a quantitative reference:
For demo-level tools, the AI’s success rate is nearly 99%, no problem. For medium-sized independent projects, like internal enterprise tools, the success rate is about 70-80%, which is acceptable. Once it involves complex business systems, such as microservices, payments, or high concurrency, the success rate drops to 40-50%. For bank-level system reconstruction, it may be less than 20%.
Recently, a telling case emerged: someone had AI continuously run for seven days, producing millions of lines of code for a Chrome project. Sounds impressive, right? However, the community discovered that the code was unexecutable, unfixable, and unreproducible—lacking even the qualification to be called “spaghetti code,” it was termed “AI sludge.”
Complexity is the true ceiling of Vibe Coding. It’s not that the model isn’t smart enough; it’s the implicit business context, architectural decisions, and historical edge cases that AI currently cannot internalize.
Thus, those who created interesting projects at Tencent were primarily working within the “demo-level” to “medium-sized independent project” range. In this range, Vibe Coding is indeed effective. But if you aim to use Vibe Coding to build a production-level complex system, I can only say, you might as well go to sleep.
Is Vibe Coding Worth Exploring?
Yes, it is.
But you need to be clear about what you are exploring.
If you are a product manager, operator, or designer with a specific pain point and want to quickly validate an idea, Vibe Coding is currently the lowest-cost path. Creating an app used by 2,000 people in three months or launching a health tracking tool in two hours—these are real occurrences.
If you are a developer looking to enhance efficiency with AI, what you need is not Vibe Coding, but AI Coding. Don’t confuse the two.
If you are merely following the trend, thinking, “I want to vibe too,” but lack a specific need, you will likely exhaust all enthusiasm in the debugging loop, ultimately concluding, “AI isn’t that useful.”
One more important point, regardless of your user type:
Don’t be misled by AI’s speed.
Prioritize planning your solution, think clearly before letting AI take action. When you encounter something you don’t understand, pause to ask for clarity, rather than pushing for generation. Regularly review what AI has done, and re-establish your mental model of the product.
Vibe Coding is meant to extend human creative boundaries, not to turn people into mere buttons on an AI assembly line.
When AI eliminates all friction, what remains?
This is a question worth serious contemplation for everyone using Vibe Coding.
Comments
Discussion is powered by Giscus (GitHub Discussions). Add
repo,repoID,category, andcategoryIDunder[params.comments.giscus]inhugo.tomlusing the values from the Giscus setup tool.