Live data from Hacker News

Vibe Coding is not an excuse for low-quality work

addyo.substack.com

71–80 of 213 posts

Re: Vibe Coding is not an excuse for low-quality work

#71
I think all this rests on the unacknowleged fact that most software never goes into production. When you have a choice between paying expensive humans to create software that works vs cheap AI to create software that doesn't, if nobody is ever going to use it, the AI option is the one to pick.

Re: Vibe Coding is not an excuse for low-quality work

#72
post #18

This all reminds me a lot of the early 2000's, when big corporations thought they could save a lot of money by outsourcing development work to low-income countries and have their expensive in-house engineers only write specifications. Turns out most of those outsourcing parties won't truly understand the core ideas behind the system you're trying to build, won't think outside the box and make corrections where necess…

More than one project manager has insisted that everything about the system must be documented--that's called the source code. As you say, by the time you specify everything , you've written the code.

Theoretically a PM could say "the code is disposable and obsoleted by the next deployment. let's just document our prompts."

I don't know if that's a good idea but a lot of people are going to try it.

Re: Vibe Coding is not an excuse for low-quality work

#73
post #66
post #51

Earlier quoted context omitted.

I wrote about this last month: "Not all AI-assisted programming is vibe coding" - https://simonwillison.net/2025/Mar/19/vibe-coding/ Vibe coding is when you don't review the code at all. If you're using LLMs to help you write code but you're actually reviewing what they produce (and iterating on it) that's not vibe coding any more. This battle is almost certainly lost already, but dammit I'm gonna keep fighting anywa…

We do need a simple term for "used AI to write code (semi)autonomously, but checked and/or tweaked the result and I care about the quality". Vibe-but-verify? Faux-Vibe? AiPair? (... I'll see myself out...)

The term for this is "unicorn"

Entirely fictional creature that doesn't exist

Every person who I have seen embracing AI coding has been getting lazier and lazier about verifying

Re: Vibe Coding is not an excuse for low-quality work

#74
post #5

So what have we redefined vibe coding to mean exactly? The original tweet[1] talked very specifically about not caring about quality, just accepting whatever code the AI produces blindly, as long as you get the black box output you're looking for, and just randomly try again if you didn't. Are people now using this term to mean "giving an AI agent broad tasks"? [1] https://x.com/karpathy/status/1886192184808149383?la…

From that tweet: > I don't read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it That sums up vibe coding, imo. The article talks about code quality with vibe coding, but I think that misses the point. The real problem is code knowledge. When a vibe coder inevitably needs to debug something, if they have no idea what any of the code does, or why it is the w…

> I’ve already had to spend hours at work tracking down bugs that ending up being in there because someone just blindly accepted the code an LLM wrote, I fear it’s only going to get worse

And I’ve also had to spend hours at work tracking down badly copy pasted stack overflow code, or from other places in the codebase that didn’t do what the programmer thought it did. A shitty carpenter will build a shitty staircase whether they have a chisel or a dremel

Re: Vibe Coding is not an excuse for low-quality work

#75
post #53
post #28

Earlier quoted context omitted.

It is a scam. Invented by someone who is an AI researcher, but not a software engineer which the latter rigorously focuses on code quality. "Vibe-coding" as it is defined, throws away all the principles of software engineering and adopts an unchecked approach into using AI generated code with "accept all changes" then duct-taping it with more code on top of a chaotic code architecture or none (single massive file) an…

Saying that Andrej Karpathy is "an AI researcher, but not a software engineer" isn't a very credible statement. If you read to the end of his tweet, he specifically says "It's not too bad for throwaway weekend projects, but still quite amusing. 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."

> Saying that Andrej Karpathy is "an AI researcher, but not a software engineer" isn't a very credible statement.

I think it is. He is certainly a great AI researcher / scientist, but not really a software engineer.

> It's not too bad for throwaway weekend projects, but still quite amusing. 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."

So is that the future of software engineering? "Accept all changes", "Copy paste stuff", "It mostly works" and little to no tests whatsoever as that is what "Vibe coding" is.

Would you yourself want vibe-coded software that is in highly critical systems such as in aeroplanes, hospitals, or in energy infrastructure?

I don't think so.

Re: Vibe Coding is not an excuse for low-quality work

#76

Different people clearly mean different things when they talk about software quality. There is quality as perceived by the user: few bugs, accurately models the problem they have, no more complicated than necessary, etc. Then there is this other notion of quality as something to do with how the software is built. How neat and clear it is. How easy it is to extend or change. The first kind of quality is the only kind…

The problem domain is part of the solution domain: writing a good specification and tests is a skill.

Moreover, I suspect the second kind of quality won't completely go away: a smart machine will develop new techniques to organize its code (making it "neat and clear" to the machine), which may resemble human techniques. I wouldn't bet much on it, but maybe even, buried within the cryptic code output by a machine, there will be patterns resembling popular design patterns.

Brute force can get results faster than careful planning, but brute force and planning gets results faster than both. AI will keep being optimized (even if one day it starts optimizing itself), and organization is presumably a good optimization.

Furthermore: LLMs think differently than humans, e.g. they seem to have much larger "context" (analogous to short-term memory) but their training (analogous to long-term memory) is immutable. Yet there are similarities as demonstrated in LLM responses, e.g. they reason in English, and reach conclusions without understanding the steps they took. Assuming this holds for later AIs, the structures those AIs organize their code into to make it easier to understand, probably won't be the structures humans would create, but they'll be similar.

Although a different type of model and much smaller, there's evidence of this in auto-encoders: they work via compression, which is a form of organization, and the weights roughly correspond to human concepts like specific numbers (MNIST) or facial characteristics (https://www.youtube.com/watch?v=4VAkrUNLKSo&t=352).

Re: Vibe Coding is not an excuse for low-quality work

#77
post #53
post #28

Earlier quoted context omitted.

It is a scam. Invented by someone who is an AI researcher, but not a software engineer which the latter rigorously focuses on code quality. "Vibe-coding" as it is defined, throws away all the principles of software engineering and adopts an unchecked approach into using AI generated code with "accept all changes" then duct-taping it with more code on top of a chaotic code architecture or none (single massive file) an…

Saying that Andrej Karpathy is "an AI researcher, but not a software engineer" isn't a very credible statement. If you read to the end of his tweet, he specifically says "It's not too bad for throwaway weekend projects, but still quite amusing. 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."

Your comment might make sense when it's scoped down to that article when he coined that term. If you take a look at his larger collection of statements on software engineering recently, it's hard not to put him in the bucket of overenthusiastic AI peddlers of today.

Re: Vibe Coding is not an excuse for low-quality work

#79
post #75
post #53

Earlier quoted context omitted.

Saying that Andrej Karpathy is "an AI researcher, but not a software engineer" isn't a very credible statement. If you read to the end of his tweet, he specifically says "It's not too bad for throwaway weekend projects, but still quite amusing. 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."

> Saying that Andrej Karpathy is "an AI researcher, but not a software engineer" isn't a very credible statement. I think it is. He is certainly a great AI researcher / scientist, but not really a software engineer. > It's not too bad for throwaway weekend projects, but still quite amusing. 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…

Where did Andrej say it was "the future of software engineering"? He very clearly described vibe coding as an entertaining way to hack on throwaway weekend projects.

Try reading the whole tweet! https://twitter.com/karpathy/status/1886192184808149383

"Would you yourself want vibe-coded software that is in highly critical systems such as in aeroplanes, hospitals, or in energy infrastructure?"

Of course not. That's why I wrote https://simonwillison.net/2025/Mar/19/vibe-coding/#using-llm...

To save you the click:

> The job of a software developer is not (just) to churn out code and features. We need to create code that demonstrably works, and can be understood by other humans (and machines), and that will support continued development in the future.

> We need to consider performance, accessibility, security, maintainability, cost efficiency. Software engineering is all about trade-offs—our job is to pick from dozens of potential solutions by balancing all manner of requirements, both explicit and implied.

> We also need to read the code. My golden rule for production-quality AI-assisted programming is that I won’t commit any code to my repository if I couldn’t explain exactly what it does to somebody else.

> If an LLM wrote the code for you, and you then reviewed it, tested it thoroughly and made sure you could explain how it works to someone else that’s not vibe coding, it’s software development. The usage of an LLM to support that activity is immaterial.

Re: Vibe Coding is not an excuse for low-quality work

#80
I think it is a losing battle. People are energy preserving creatures and we skip paying attention if we can. Because paying attention is effort. Vibe coding is exactly this, low effort development and thus is enticing. Now if we can get away with low effort why shouldn’t we? I am not advocating serious NATO missions to be vibe coded for trajectories, no. When billions are at stake no way. But what if billions are not at stake? What if nothing is? This weekend I added a way to maximise my QApplication app. I just asked Claude code to do it and tested it. It worked. That is all I need for my own app that I use. It’s not that I don’t have any other users but works on my machine is the motto of this specific free and open source app.
Post reply on HN