6 ms·
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 c
by SCdF 1y ago
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?lang=en https://x.com/karpathy/status/1886192184808149383?lang=en
- spaceywilly 1y agoFrom 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 way it is, they are not going to have a good time. Sure they can copy paste the error into the LLM and hope for the best, but what happens when that doesn’t fix it? 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.
- benmanns 1y agoLike you, I’m far too risk averse to not fact check everything an LLM outputs, but I’ve also fixed bugs that have been present for 5+ years. Maybe at a certain point you can just wait for the next generation of model to fix the bugs. And wait for the generation after that to fix the newly introduced and/or more subtle bugs.
- mr_mitm 1y agoAlso from the tweet; > It's not too bad for throwaway weekend projects, but still quite amusing You were never supposed to vibe code on serious projects.
- fma 1y agoIt's fine for tooling or weekend project. I did it on an internal tool. It's got so much functionality now though, that Cursor struggles. It was great when I had a blank project, needed x, y, z and it went off and did It's thing. The moment the project got bug and need modifications, it is better that I do it myself. Also I am a backend engineer. I don't know what kind of code it's producing for my front end. I just hit accept all. But seeing how it does the backend code and having to prompt it to do something better (architectural, performance, code reuse) I have no doubt the front end of my pool is a pile of poop. I fear that management will see these small quick gains and think it applies to everything. I'm of the opinion now, that vibe coding is good if you are familiar with the code & stack and can ensure quality. You don't want to give it to a product owner and have them try to be an engineer (or have a backend dev do front end, vice versa). Just my opinion.
- cybertheory 1y ago[dead]
- SoftTalker 1y agoAny project that solves a real need will invariably become serious. I have lost count of the number of quick one off scripts that ended up still being used in production workloads five (or more) years later.
- musicale 1y ago> 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 way it is, they are not going to have a good time Kernighan's law still applies. https://www.laws-of-software.com/laws/kernighan/ https://www.laws-of-software.com/laws/kernighan/
- dkersten 1y agoI strongly believe it also applies to the AI itself. If the AI wrote the code to the top of its ability, it doesn’t have the capability to debug said code, because its ability to detect and correct issues has already been factored in. You end up with a constant stream of “I see the issue, it’s: <not the actual issue>”, which is consistent with my experience of trying to have LLM’s debug their own code without basically doing the work myself and pointing them to the specific actual issue.
- dornan 1y ago[dead]
- rvz 1y ago> Sure they can copy paste the error into the LLM and hope for the best, but what happens when that doesn’t fix it? Neither side cares unfortunately. When users attempt to prompt away their problems without understanding the error and it doesn't solve it, that is still good news for Cursor and Anthropic and it is more money for them. The influencers encouraging "vibe coding" also don't care. They need to be paid for their Twitter money or YouTube ad revenue.
- maccard 1y ago> 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
- achierius 1y agoBut what about a middling carpenter? Moralism about "shitty programmers" is not helpful when we're really talking about aggregate trends, and when it comes to aggregates -- tools do matter. Defaults matter. Precedent matters. Things like these are why culture has such an outsized impact on a teams' ability to ship good, quality code over a long period of time.
- dragonwriter 1y agoOne difference is that orgs are tracking AI coding assistant usage as a (positive) metric, soemthing they never did with SO. Given finite time, being pushed to AI code whether or not it makes sense or is efficient in either quality or delivery time, and with no relief of time constraints, means other things will fall by the wayside. A good carpenter will build a shitty staircase if he is forced to use the wrong tool, given a timeline that doesn't accommodate it, and paid for delivering something that superficially resembles a staricase on time regardless of quality.
- migelammon 1y ago[dead]
- shikon7 1y ago> Sure they can copy paste the error into the LLM and hope for the best, but what happens when that doesn’t fix it? Then you throw the code away and start newly from scratch. Or you accept that your problem cannot be solved by vibe coding.
- marcusb 1y agoThe definition seems to have pretty rapidly moved to 'used an AI coding assistant in some capacity'.
- t-writescode 1y agoAnd I think that *horribly* muddies the definition because programming and getting a bit of AI help here and there (since it's read the docs better than you have, and scanned Stack Overflow for common problems and mistakes more thoroughly than you have) is, imo, a very, very valid way to program; but you're still very much in the driver's seat. It's not creating whole design patterns, etc, for you. I wonder if maybe some people have been trying to jump on the "I have also tried vibe coding" train without being willing to hop as far as the term initiator defined it. I definitely still stick to the "Vibe Coding is when you don't read / grok the code" definition.
- marcusb 1y agoI agree - I'm not endorsing this broad usage of the term, just noting how I see it used in practice. This seems to be half driven by grifters on social media promoting their AI coding course du jour and half by people who just discovered Cursor, Windsurf, etc., and think any use of those tools counts.) Another commenter said these people only read half of Karpathy's tweet - I disagree. I don't think they read it at all, have heard the phrase, and are using it with reckless abandon.
- calderwoodra 1y agoMore specifically, using AI bots that can write functions, sometimes entire classes, refactor code, etc. GitHub copilot which is mostly single line completions isn't "vibe coding". I think vibe coding also entails some "what it did was so simple, I didn't bother to check it".
- rvz 1y agoIt 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) and especially with zero tests. The fact is, it encourages carelessness and ignores security principles just to make it acceptable to create low quality and broken software that can be hacked very easily. You can spot some of these "vibe-coders" if they believe that they can destroy Docusign in a day with Cursor + Claude with their solution. Who's going to tell them?
- simonw 1y agoSaying 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."
- rvz 1y ago> 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.
- simonw 1y agoWhere 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 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-llms-for-code-responsibly-is-not-vibe-coding 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.
- dheera 1y agoI absolutely hate the polarization around "vibe coding". The whole point of AI agents is to eventually get good enough to do this stuff better than humans do. It's okay to dogfood and test them now and see how well they do, and improve them over time. Software engineers will eventually become managers of AI agents. Vibe coding is just version 0.1 pre-alpha of that future.
- candiddevmike 1y ago> Software engineers will eventually become managers of AI agents. Source? This seems very optimistic on both ends (that AI will replace SE work, AND SEs will still be employed to manage them).
- dheera 1y agoI don't need a source, this is my prediction of the future.
- RossBencina 1y ago> "And then in twelve months, we may be in a world where AI is writing essentially all of the code," Anthropic CEO Dario Amodei said at a Council on Foreign Relations event on Monday. [last week] https://www.businessinsider.com/anthropic-ceo-ai-90-percent-code-3-to-6-months-2025-3 https://www.businessinsider.com/anthropic-ceo-ai-90-percent-... The entire Council on Foreign Relations on stage chat is on YouTube.
- simonw 1y ago"The whole point of AI agents is to eventually get good enough to do this stuff better than humans do" You can be an enthusiastic adopter of AI tooling (like I am) without wanting them to eventually be better than humans at everything. I'm very much still in the "augment, don't replace" camp when it comes to AI tooling.
- dheera 1y agoNo, I actually do want them to eventually be better than humans at everything. I'm okay with directing AI to write exactly the software I need, without having to manage "stakeholders", deal with the egos of boomers up the management chain, and all the shitty things certain people do in any organizations that get large enough.
- simonw 1y agoI wrote about this last month: "Not all AI-assisted programming is vibe coding" - https://simonwillison.net/2025/Mar/19/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 anyway! Salty version: https://bsky.app/profile/simonwillison.net/post/3ll2rtxeucs2e https://bsky.app/profile/simonwillison.net/post/3ll2rtxeucs2... > Feels like I'm losing the battle on this one, I keep seeing people use "vibe coding" to mean any time an LLM is used to write code > I'm particularly frustrated because for a few glorious moments we had the chance at having ONE piece of AI-related terminology with a clear, widely accepted definition! > But it turns out people couldn't be trusted to read all the way to the end of Andrej's tweet, so now we are back to yet another term where different people assume it means different things I found out this anti-pattern where a newly coined term loses its definition as it spreads more widely is called "semantic diffusion": https://simonwillison.net/2025/Mar/23/semantic-diffusion/ https://simonwillison.net/2025/Mar/23/semantic-diffusion/
- senko 1y agoWe 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...)
- bluefirebrand 1y agoThe 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
- otabdeveloper4 1y ago> yeah bro, leave the easy and fun part (googling and typing code) to an AI, and let the human deal with the tedious and error-prone part (checking all the edge cases) What did you really expect?
- xnx 1y agoVibe coder - someone who uses more coding assistance than I do
- danielbln 1y agoIt's like driving. Someone doing more vibe coding then me is a maniac and irresponsible, someone doing less is a slow control freak.
- ChrisMarshallNY 1y agoIn the project I’m currently developing (a rewrite of an old timer app), I wanted to implement drag-and-drop icons, but didn’t have much experience with UICollectionView, which is one of the iOS technologies that displays a matrix of elements. I asked ChatGPT for help, and it was quite helpful. However, its code was really verbose, and fairly “messy.” Even though it worked, it didn’t work well. I used it as guidance for training myself in the tech, and developed an approach that is far better. I had to learn the tech, and refactored the code example in a pretty major way. Maybe some of the other tools are better, but I haven’t gotten any code that I would even consider shipping; pretty much exactly like my experience with Stack Overflow, for years.
- jhbadger 1y agoIt's like doomscrolling. Originally it meant compulsively reading depressing content about the state of the world, wars, etc., explaining the "doom" part, but eventually it evolved (or perhaps devolved) into just meaning obsessively checking any sort of online content whether or not it was depressing.
- davidguetta 1y agoI honestly though the doom part was about you being stuck in an horrible loop / situation, not the essence of the news
- michaelbrave 1y agoin a lot of ways that is understandable when so much of the news is bad news, if all the highlights of the day point toward the world going to hell even reading a normal newsfeed can feel like doomscrolling.