Spend a few minutes on X, Reddit or Hacker News and you will see it. Someone shares a product they built, and the first comment is not about the product at all. It is: “This is vibe coded” or “Looks too Claude-ish”

And that sentence is almost never a compliment.

The term “vibe coding” was first used by Andrej Karpathy in early 2025. It means building software by describing what you want to an AI and accepting the code it writes, often without reading every line. In less than two years, it went from a joke to a normal way of building things. At the same time, it became an insult.

I am a software developer, and I have felt this negative feeling too. So in this post I want to ask an honest question: is vibe coding really that bad? And if it isn’t, why do so many of us seem to hate vibe-coded products?

It hurts, and we should say it

I think the first reason is simple: it hurts.

Most of us worked very hard to learn programming. It took us years to become good at it. We learned languages, frameworks and patterns, and we fixed bugs late at night until things finally worked.

Out of that skill, we built careers and made money. And if I am honest, many of us also put our value as people on it. Being able to build software made us feel a little special, because it was something most people could not do.

Now we see things that used to be hard for us being built in a weekend. Things that took us weeks or months can now be made by almost anyone, with not much effort. When something you spent years learning suddenly becomes easy for everyone, it is natural to feel that your effort is worth less.

That feeling is real. But a feeling is not an argument against the product.

The perfectionist in us

The second reason, I believe, is perfectionism.

As developers, we are trained to look for problems. We notice a function that is too long, a missing test, a strange variable name. Somewhere along the way, some of us started to believe that if code is not perfect, it has no value.

With vibe-coded projects, this goes one step further. Because the code was not written by a human, it feels like it is not allowed to have mistakes. One bug or one messy file, and the whole project should be destroyed. It should not even exist.

Especially, if it was written with AI! Nevertheless, we are better than it, right?

But if we are honest with ourselves, we have to ask a few questions. How long would it take one person, or a whole team, to build the same product by hand? Would they really make fewer mistakes? And was software ever meant to be perfect and bug-free from the first day?

Software was never perfect

The answer is no. And we all know it.

Think about Heartbleed. In 2014, people found a serious bug in OpenSSL, a library that protected a huge part of the internet. The bug had been in the code for about two years, written and reviewed by humans.

Or think about July 2024, when a faulty CrowdStrike update crashed around 8.5 million Windows computers. Flights were cancelled, and hospitals and banks had serious problems. No AI was needed for that.

These are only the famous examples. Every developer has shipped bugs. Almost every product we love today had a buggy first version. For years, Facebook’s motto was literally “move fast and break things.”

Software was always meant to grow. You build a first version, people use it, you find the bugs, you fix them, and slowly the product finds its place. That is how it has always worked.

The only thing that is changing right now is the speed. The making process takes less time, much less time. But the cycle is the same.

About the jobs

Before I go further, I want to be clear about one thing. People have lost their jobs because of this. I accept that, and I think it is the worst part of the whole story.

What is even worse is that many of these good, skilled people are finding it hard to get a new job. That is a real problem, and it deserves its own serious discussion.

But that is not my point here. In this post, I want to talk about something more personal: how we feel when we look at a product and find out it was vibe coded.

So what do we actually dislike?

When we see a vibe-coded product and feel that negative reaction, what is it really about?

Is it the AI? Is it the code, which might be messy? Is it the feeling that the product is not genuine, not “hand made”? Or is it that now anyone can make software, and we are not special anymore?

I don’t think the real problem is quality, at least not most of the time. If it were about quality, we would ask the same questions about every product. And we never did.

Before AI, did we care how a piece of software was built? When you downloaded an app, did you check if the developer wrote tests, or copied half the code from Stack Overflow? Probably not. You checked if it worked and if it solved your problem.

Here is a simple test. Think of a piece of software you really like, something that works well and makes your life easier. Do you ever ask yourself if it was made with AI? Would the answer change anything for you?

If an idea is good and it helps people, why does it matter how it was built?

Aren’t developers allowed to vibe code?

There is another argument I hear a lot. Vibe coding is connected with “not thinking”: you type a prompt, accept whatever the AI gives you, and ship it. I agree with part of this, because you should at least think about what you are making.

But this raises a few questions. If someone uses AI to build a product, does that automatically mean they vibe coded it? And aren’t software developers allowed to use AI too?

Many experienced developers now use AI every day. They plan the architecture, decide on the data model and think about security. Then they let the AI write a big part of the code.

Here is the harder question: how do we judge whether someone actually thought about their product? From the outside, we only see the result. We don’t see the hours of planning, the decisions they made, or the bad ideas they threw away before writing a single prompt.

And even if we could see it, how would we measure it? How much thinking is enough, and how deep do the thoughts need to be before a product is “allowed” to exist?

We never asked these questions about hand-written code. A developer can write every line by hand and still not think much about the product. Someone else can use AI for almost everything and think very carefully about every part of it.

So when we say “this is vibe coded,” we are often just guessing. We judge the process from the outside, without facts.

Where the criticism is fair

To be fair, there is one case where how something was built does matter: when the builder doesn’t understand what they shipped.

If your app stores people’s emails, passwords or payment details, you are responsible for that data. A vibe-coded app with an open database, or an API key sitting in the frontend code, can hurt real people. In that case, “the AI wrote it” is not an excuse.

But look closely at this problem. It is not really about AI. Ten years ago, a beginner copying code from tutorials could make the same mistakes, and many did. The real issue is responsibility and understanding, and that is what we should criticize. Not the tool.

Does it really matter how it was built?

I don’t think vibe coding is bad. It is a new tool, and like every tool, it can be used well or badly.

So here is my bottom line. Most of the hate towards vibe-coded products, and towards AI in general, comes from personal reasons, not from facts. It comes from the pain of seeing a hard-earned skill become easy, and from a perfectionism we never applied so strictly to code written by humans.

It also comes from guessing how much thought someone put into their work, something we can’t really see or measure. In the end, much of this negative view is simply subjective.

So the next time you see a product and your first thought is “this is vibe coded,” try asking a different question: does it solve a real problem for someone? If the answer is yes, maybe that is what matters most.

The bugs, the messy code and the missing features can be fixed over time. That is what software has always done.

I’m curious what you think. Is there something about vibe-coded products that still bothers you, even when they work well?