"No Duh," say senior developers everywhere.

The article explains that vibe code often is close, but not quite, functional, requiring developers to go in and find where the problems are - resulting in a net slowdown of development rather than productivity gains.

top 99 comments

sorted by: hot top controversial new old
[–] 197 points 1 year ago (1 child)

Even though this shit was apparent from day fucking 1, at least the Tech Billionaires were able to cause mass layoffs, destroy an entire generation of new programmers' careers, introduce an endless amount of tech debt and security vulnerabilities, all while grifting investors/businesses and making billions off of all of it.

Sad excuses for sacks of shit, all of them.

  • source
  • hideshow 1 child comment
  • Look on the bright side, in a couple of years they will come crawling back to us, desperate for new things to be built so their profit machines keep profiting.

    Current ML techniques literally cannot replace developers for anything but the most rudimentary of tasks.

    I wish we had true apprenticeships out there for development and other tech roles.

  • source
  • parent
  • [–] 71 points 1 year ago (15 children)

    “No Duh,” say senior developers everywhere.

    I'm so glad this was your first line in the post

  • source
  • hideshow 15 child comments
  • [–] 13 points 1 year ago (13 children)

    No duh, says a layman who never wrote code in his life.

  • source
  • parent
  • hideshow 13 child comments
  • [–] 34 points 1 year ago (11 children)
  • [–] 19 points 1 year ago (7 children)

    Oddly enough, my grasp of coding is probably the same as the guy in the middle but I still know that LLM generated code is garbage.

  • source
  • parent
  • hideshow 7 child comments
  • [–] 11 points 1 year ago* (4 children)

    Yeah, I actually considered putting the same text on all 3, but we gotta put the idiots that think it's great somewhere! Maybe I should have put it with the dumbest guy instead.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 0 points 1 year ago

    That's kinda wrong though. I've seen llm's write pretty good code, in some cases even doing something clever I hadn't thought of.

    You should treat it as any junior though, and read the code changes and give feedback if needed.

  • source
  • parent
  • [–] 6 points 1 year ago (1 child)

    Thing is both statements can be true.

    Used appropriately and in the right context, LLMs can accelerate some select work.

    But the hype level is 'human replacement is here (or imminent, depending on if the company thinks the audience is willing to believe yet or not)'. Recently Anthropic suggested someone could just type 'make a slack clone' and it'll all be done and perfect.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    This. Like with any tool you have to learn how and when to use it. I've started to get the hang of what tasks it improves but I don't think I've regained the hours I've spent learning it yet.

    But as the tool and my understanding of it improves it'll probably happen some day.

  • source
  • parent
  • [–] 2 points 1 year ago

    Heh. That's a fun chart. If that's programming aptitude, I scored 80 on that part of the broad spectrum aptitude test I got a sneak-peek chance to do several parts of. Well now I know why I'm so easily in agreement with "senior coders", if it is programming aptitude quotient. If it's just iq, ... pulls hood up to block the glare.

    Daunting that there may be a middling bias getting apparent advantages. Evolution may not serve us well like that.

  • source
  • parent
  • [–] 42 points 1 year ago (2 children)

    AI coding is the stupidest thing I've seen since someone decided it was a good idea to measure the code by the amount of lines written.

  • source
  • hideshow 2 child comments
  • [–] 41 points 1 year ago (3 children)

    The most immediately understandable example I heard of this was from a senior developer who pointed out that LLM generated code will build a different code block every time it has to do the same thing. So if that function fails, you have to look at multiple incarnations of the same function, rather than saying “oh, let’s fix that function in the library we built.”

  • source
  • hideshow 3 child comments
  • [–] 17 points 1 year ago (2 children)

    Yeah, code bloat with LLMs is fucking monstrous. If you use them, get used to immediately scouring your code for duplications.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 0 points 1 year ago (1 child)

    Yeah if I use it and it generatse more than 5 lines of code, now I just immediately cancel it out because I know it's not worth even reading. So bad at repeating itself and falling to reasonably break things down in logical pieces..

    With that I only have to read some of it's suggestions, still throw out probably 80% entirely, and fix up another 15%, and actually use 5% without modification.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    There are tricks to getting better output from it, especially if you're using Copilot in VS Code and your employer is paying for access to models, but it's still asking for trouble if you're not extremely careful, extremely detailed, and extremely precise with your prompts.

    And even then it absolutely will fuck up. If it actually succeeds at building something that technically works, you'll spend considerable time afterwards going through its output and removing unnecessary crap it added, fixing duplications, securing insecure garbage, removing mocks (God... So many fucking mocks), and so on.

    I think about what my employer is spending on it a lot. It can't possibly be worth it.

  • source
  • parent
  • [–] 34 points 1 year ago*

    Almost like its a desperate bid to blow another stock/asset bubble to keep 'the economy' going, from C suite, who all knew the housing bubble was going to pop when this all started, and now is.

    Funniest thing in the world to me is high and mid level execs and managers who believe their own internal and external marketing.

    The smarter people in the room realize their propoganda is in fact propogands, and are rolling their eyes internally that their henchmen are so stupid as to be true believers.

  • source
  • [–] 25 points 1 year ago (1 child)

    it's slowing you down. The solution to that is to use it in even more places!

    Wtf was up with that conclusion?

  • source
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    I don't think it's meant to be a conclusion. The article serves as a recap of several reports and studies about the effectivity of LLMs with coding, and the final quote from Bain & Company was a counterpoint to the previous ones asserting that productivity gains are minimal at best, but also that measuring productivity is a grey area.

  • source
  • parent
  • [–] 138 points 1 year ago (24 children)

    I mean.. At best it's a stack overflow/google replacement.

  • source
  • hideshow 24 child comments
  • [–] 93 points 1 year ago* (16 children)

    There's some real perks to using AI to code - it helps a ton with templatable or repetitive code, and setting up tedious tasks. I hate doing that stuff by hand so being able to pass it off to copilot is great. But we already had tools that gave us 90% of the functionality copilot adds there, so it's not super novel, and I've never had it handle anything properly complicated at all successfully (asking GPT-5 to do your dynamic SQL calls is inviting disaster, for example. Requires hours of reworking just to get close.)

  • source
  • parent
  • hideshow 16 child comments
  • [–] 21 points 1 year ago (4 children)

    Fair, I've used it recently to translate a translations.ts file to Spanish.

    But for repetitive code, I feel like it is kind of a slow down sometimes. I should have refactored instead.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 11 points 1 year ago

    This is a thing people miss. "Oh it can generate repetitive code."

    OK, now who's going to maintain those thousands of lines of repetitive unit tests, let alone check them for correctness? Certainly not the developer who was too lazy to write their own tests and to think about how to refactor or abstract things to avoid the repetition.

    If someone's response to a repetitive task is copy-pasting poorly-written code over and over we call them a bad engineer. If they use an AI to do the copy-paste for them that's supposed to be better somehow?

  • source
  • parent
  • [–] 7 points 1 year ago

    Similarly I find it very useful for if I've written a tool script and really don't want to write the command line interface for it.

    "Here's a well-documented function - write an argparser for it"

    ...then I fix its rubbish assumptions and mistakes. It's probably not drastically quicker but it doesn't require as much effort from me, meaning I can go harder on the actual function (rather than keeping some effort in reserve to get over the final hump).

  • source
  • parent
  • [–] 4 points 1 year ago

    I’ve had plenty of success using it to build things like docker compose yamls and the like, but for anything functional, it does often take a few tries to get it right. I never use its raw for anything in production. Only as a leaping off point to structure things.

  • source
  • parent
  • [–] 1 point 1 year ago (2 children)

    (asking GPT-5 to do your dynamic SQL calls is inviting disaster, for example. Requires hours of reworking just to get close.)

    Maybe it's the dynamic SQL calls themselves that are inviting disaster?

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 1 year ago* (1 child)

    Dynamic SQL in of itself not an issue, but the consequences (exacerbated by SQL's inherent irrecoverability from mistakes - hope you have backups) have stigmatized its use heavily. With an understanding of good practice, a proper development environment and a close eye on the junior devs, there's no inherent issue to using it.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 1 year ago

    With an understanding of good practice, a proper development environment and a close eye on the junior devs, there’s no inherent issue to using it.

    My feelings about C/C++ are the same. I'm still switching to Rust, because that's what the company wants.

  • source
  • parent
  • [+] -6 points 1 year ago (3 children)

    So much of the AI hype has been pointing to ten year old technology repackaged in a slick new interface.

    AI is the iPod to the Zune of yesteryear.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 8 points 1 year ago (2 children)

    Repackaging old technology in slick new interfaces is what we have been calling progress in computer software for 40+ years.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 8 points 1 year ago (1 child)

    I mean... I like to think we've done a bit more than that. FFS, file compression alone has made leaps and bounds since the 3.25" floppy days.

    Also, as a T-SQL guy, I gotta say there's a world of difference between SQL 2008 and SQL 2022.

    But I'll spot you that a lot of the last 10-15 years has produced herculean efforts in answering the question "How can we squeeze a few more ads into your GUI?"

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
  • [–] 15 points 1 year ago (2 children)

    At absolute best.

    My experience is it's the bottom stack overflow answers. Making up bullshit and nonexistent commands, etc.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 1 year ago

    If you know what you want, its automatic code completion can save you some typing in those cases where it gets it right (for repetitive or trivial code that doesn't require much thought). It's useful if you use it sparingly and can see through its bullshit.

    For junior coders, though, it could be absolute poison.

  • source
  • parent
  • [–] 4 points 1 year ago

    At least when I'm cleaning up after shit devs who used Stack Overflow, I can usually search using a fragment of their code and find where they swiped it from and get some clue what the hell they were thinking. Now that they're all using AI chatbots, there's no trace.

  • source
  • parent
  • [–] 0 points 1 year ago*

    In the beginning there were manufacturer's manuals, spec sheets, etc.

    Then there were magazines, like Byte, InfoWorld, Compute! that showed you a bit more than just the specs

    Then there were books, including the X for Dummies series that purported to teach you theory and practice

    Then there was Google / Stack Overflow and friends

    Somewhere along there, where depends a lot on your age, there were school / University courses

    Now we have "AI mode"

    Each step along that road has offered a significant speedup, connecting ideas to theory to practice.

    I agree, all the "magic bullet" AI hype is far overblown. However, with AI something I new I can do is, interactively, develop a specification and a program. Throw out the code several times while the spec gets refined, re-implemented, tried in different languages with different libraries. It's still only good for "small" projects, but less than a year ago "small" meant less than 1000 lines of code. These days I'm seeing 300 lines of specification turn into 1500-3000 lines of code and have it running successfully within half a day.

    I don't know if we're going to face a Kurzweilian singularity where these things start improving themselves at exponential rates, or if we'll hit another 30 year plateau like neural nets did back in the 1990s... As things are, Claude helps me make small projects several times faster than I could ever do with Google and Stack Overflow. And you can build significant systems out of cooperating small projects.

  • source
  • parent
  • [–] 19 points 1 year ago (4 children)

    I have been vibe coding a whole game in JavaScript to try it out. So far I have gotten a pretty ok game out of it. It's just a simple match three bubble pop type of thing so nothing crazy but I made a design and I am trying to implement it using mostly vibe coding.

    That being said the code is awful. So many bad choices and spaghetti code. It also took longer than if I had written it myself.

    So now I have a game that's kind of hard to modify haha. I may try to setup some unit tests and have it refactor using those.

  • source
  • hideshow 4 child comments
  • [–] 17 points 1 year ago (1 child)

    Senior Management in much of Corporate America is like a kind of modern Nobility in which looking and sounding the part is more important than strong competence in the field. It's why buzzwords catch like wildfire.

  • source
  • hideshow 1 child comment
  • [–] 16 points 1 year ago (2 children)

    Are you trying to tell me that the people wanting to sell me their universal panacea for all human endeavours were... lying...? Say it ain't so.

  • source
  • hideshow 2 child comments
  • [–] 40 points 1 year ago* (last edited 1 year ago)

    You mean relying blindly on a statistical prediction engine to attempt to produce sophisticated software without any understanding of the underlying principles or concepts doesn't magically replace years of actual study and real-world experience?

    But trust me, bro, the singularity is imminent, LLMs are the future of human evolution, true AGI is nigh!

    I can't wait for this idiotic "AI" bubble to burst.

  • source
  • [–] 13 points 1 year ago

    It turns every prototyping exercise into a debugging exercise. Even talented coders often suck ass at debugging.

  • source
  • [+] 25 points 1 year ago (2 children)
  • [–] 14 points 1 year ago (1 child)

    It is not worthless. My understanding is that management only trusts sources that are expensive.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 8 points 1 year ago

    Yep, going through that at work, they hired several consultant companies and near as I can tell, they just asked employees how the company was screwing up, we largely said the same things we always say to executives, they repeated them verbatim, and executives are now praising the insight on how to fix our business...

  • source
  • parent
  • [+] 12 points 1 year ago (4 children)
  • [–] [S] 23 points 1 year ago

    From what I've seen and heard, there are a few factors to this.

    One is that the tech industry right now is built on venture capital. In order to survive, they need to act like they're at the forefront of the Next Big Thing in order to keep bringing investment money in.

    Another is that LLMs are uniquely suited to extending the honeymoon period.

    The initial impression you get from an LLM chatbot is significant. This is a chatbot that actually talks like a person. A VC mogul sitting down to have a conversation with ChatGPT, when it was new, was a mind-blowing experience. This is a computer program that, at first blush, appears to be able to do most things humans can do, as long as those things primarily consist of reading things and typing things out - which a VC, and mid/upper management, does a lot of. This gives the impression that AI is capable of automating a lot of things that previously needed a live, thinking person - which means a lot of savings for companies who can shed expensive knowledge workers.

    The problem is that the limits of LLMs are STILL poorly understood by most people. Despite constructing huge data centers and gobbling up vast amounts of electricity, LLMs still are bad at actually being reliable. This makes LLMs worse at practically any knowledge work than the lowest, greenest intern - because at least the intern can be taught to say they don't know something instead of feeding you BS.

    It was also assumed that bigger, hungrier LLMs would provide better results. Although they do, the gains are getting harder and harder to reach. There needs to be an efficiency breakthrough (and a training breakthrough) before the wonderful world of AI can actually come to pass because as it stands, prompts are still getting more expensive to run for higher-quality results. It took a while to make that discovery, so the hype train was able to continue to build steam for the last couple years.

    Now, tech companies are doing their level best to hide these shortcomings from their customers (and possibly even themselves). The longer they keep the wool over everyone's eyes, the more money continues to roll in. So, the bubble keeps building.

  • source
  • parent
  • [–] 9 points 1 year ago

    AI is a financial scam. Basically companies that are already mature promise great future profits thanks to this new technological miracle, which makes their stock more valuable than it otherwise would be. Cory Doctorow has written eloquently about this.

  • source
  • parent
  • [–] 3 points 1 year ago

    I think right now companies are competing until they're only 1 or 2 that clearly own the majority of the market.

    Afterwards they will devolve back into the same thing search engines are now. A cesspool of sponsored ads and links to useless SEO blogs.

    They'll just become gate keepers of information again and the only ones that will be heard are the ones who pay a fee or game the system.

    Maybe not though, I'm usually pretty cynical when it comes to what the incentives of businesses are.

  • source
  • parent
  • [–] 12 points 1 year ago (1 child)

    For most large projects, writing the code is the easy part anyway.

  • source
  • hideshow 1 child comment
  • [–] 3 points 1 year ago*

    Writing new code is easier than editing someone else's code but editing a portion is still better than writing the entire program again from start to end.

    Then there is LLMs which force you to edit the entire thing from start to end.

  • source
  • parent
  • [–] 12 points 1 year ago

    I am jack's complete lack of surprise.

  • source
  • [–] 12 points 1 year ago

    I always need to laugh when I read "Agentic AI"

  • source
  • [–] 11 points 1 year ago (1 child)

    The biggest value I get from AI in this space is when I get handed a pile of spagehtti and ask for an initial overview.

  • source
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    I thought that as well and got some code from someone that left the company and asked it to comment it.

    It did the obvious "x= 5 // assign 5 to x" crap comments and then it got to the actually confusing part and just skipped that mess entirely....

  • source
  • parent
  • [–] 11 points 1 year ago* (9 children)

    I have never seen an AI generated code which is correct. Not once. I've certainly seen it broadly correct and used it for the gist of something. But normally it fucks something up - imports, dependencies, logic, API calls, or a combination of all them.

    I sure as hell wouldn't trust to use it without reviewing it thoroughly. And anyone stupid enough to use it blindly through "vibe" programming deserves everything they get. And most likely that will be a massive bill and code which is horribly broken in some serious and subtle way.

  • source
  • hideshow 9 child comments
  • [–] 3 points 1 year ago* (last edited 1 year ago) (2 children)

    I've used Claude code to fix some bugs and add some new features to some of my old, small programs and websites. Not things I can't do myself, but things I can't be arsed to sit down and actually do.

    It's actually gone really well, with clean and solid code. easily readable, correct, with error handling and even comments explaining things. It even took a gui stream processing program I had and wrote a server / webapp with the same functionality, and was able to extend it with a few new features I've been thinking to add.

    These are not complex things, but a few of them were 20+ files big, and it manage to not only navigate the code, but understand it well enough to add features with the changes touching multiple files (model, logic, view layer for example, or refactor a too big class and update all references to use the new classes).

    So it's absolutely useful and capable of writing good code.

  • source
  • parent
  • hideshow 2 child comments
  • load more comments (1 reply)
  • [–] 1 point 1 year ago

    for me it typically don't cause syntax errors, but the main thing it fucks up is what you specifically told them to do, where the output straight up does not perform the way your specification requires. If it's just some syntax errors at least the compiler can catch them, this you won't even know if you don't bother testing the output.

  • source
  • parent
  • [–] 1 point 1 year ago*

    Eh I had it write a program that finds my PCs ip and sends it to the Unifi gateway to change a rule. Worked fine but I guess technically it is mostly using the go libraries written by someone else.

  • source
  • parent
  • [+] -4 points 1 year ago (4 children)
  • [–] 3 points 1 year ago (1 child)

    To add on to what others have said, vibe coding is ushering in a new golden age for black hat hackers. If someone is rely entirely on AI to generate code they likely don't understand what the code they have is actually doing. This tends to lead to an app that works correctly for what the prompted specified but behaves badly the instant it has to handle anything outside of the prompt, like a malformed request or data outside the prompted parameters. As a result these apps tend to be easy to exploit by malicious actors, often in ways the original prompter never thought of.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 1 year ago

    I think this is what will kill vibe coding, but not before there's significant damage done. Junior developers will be let go and senior devs will be told they have to use these tools instead and to be twice as efficient. At some point enough major companies will have had data breaches through AI-generated code that they all go back to using people, but there will be tons of vulnerable code everywhere. And letting Cursor touch your codebase for a year, even with oversight, will make it really tricky to find all the places it subtly fucked up.

  • source
  • parent
  • [–] 2 points 1 year ago

    If the code doesn't compile, or is badly mangled, or uses the wrong APIs / imports or forgets something really important then it's broken. I can use AI to inform my opinion and sometimes makes use of what it outputs but critically I know how to program and I know how to spot good and bad code.

    I can't speak for how you use it, but if you don't have any real programmers and you're iterating until something works then you could be producing junk and not know it. Maybe it doesn't matter in your case if its a bunch for throwaway scripts and helpers but if you have actual code in production where money, lives, reputation, safety or security are at risk then it absolutely does.

  • source
  • parent
  • load more comments (-1 replies)
    [+] 21 points 1 year ago (3 children)
  • [–] 32 points 1 year ago (6 children)

    Might be there someday, but right now it’s basically a substitute for me googling some shit.

    If I let it go ham, and code everything, it mutates into insanity in a very short period of time.

  • source
  • hideshow 6 child comments
  • [–] 29 points 1 year ago (5 children)

    I'm honestly doubting it will get there someday, at least with the current use of LLMs. There just isn't true comprehension in them, no space for consideration in any novel dimension. If it takes incredible resources for companies to achieve sometimes-kinda-not-dogshit, I think we might need a new paradigm.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 15 points 1 year ago (2 children)

    A crazy number of devs weren't even using EXISTING code assistant tooling.

    Enterprise grade IDEs already had tons of tooling to generate classes and perform refactoring in a sane and algorithmic way. In a way that was deterministic.

    So many use cases people have tried to sell me on (boilerplate handling) and im like "you have that now and don't even use it!".

    I think there is probably a way to use llms to try and extract intention and then call real dependable tools to actually perform the actions. This cult of purity where the llm must actually be generating the tokens themselves... why?

    I'm all for coding tools. I love them. They have to actually work though. Paradigm is completely wrong right now. I don't need it to "appear" good, i need it to BE good.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 7 points 1 year ago (1 child)

    Exactly. We're already bootstrapping, re-tooling, and improving the entire process of development to the best of our collective ability. Constantly. All through good, old fashioned, classical system design.

    Like you said, a lot of people don't even put that to use, and they remain very effective. Yet a tiny speck of AI tech and its marketing is convincing people we're about to either become gods or be usurped.

    It's like we took decades of technical knowledge and abstraction from our Computing Canon and said "What if we didn't use that anymore?"

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 1 year ago

    This is the smoking gun. If the AI hype boys really were getting that "10x engineer" out of AI agents, then regular developers would not be able to even come close to competing. Where are these 10x engineers? What have they made? They should be able to spin up whole new companies, with whole new major software products. Where are they?

  • source
  • parent
  • [–] 1 point 1 year ago

    I think we've tapped most of the mileage we can get from the current science, the AI bros conveniently forget there have been multiple AI winters, I suspect we'll see at least one more before "AGI" (if we ever get there).

  • source
  • parent
  • [–] 1 point 1 year ago

    They are statistical prediction machines. The more they output, the larger the portion of their "context window" (statistical prior) becomes the very output they generated. It's a fundamental property of the current LLM design that the snake will eventually eat enough of it's tail to puke garbage code.

  • source
  • parent
  • [–] 9 points 1 year ago

    so is the profit it was foretold to generate, but it actually costs money than its actually generating.

  • source
  • load more comments
    view more: next ›