“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.

  • COASTER1921@lemmy.ml
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    2
    ·
    10 days ago

    AI companies and investors are absolutely overhyping its capabilities, but if you haven’t tried it before I’d strongly recommend doing so. For simple bash scripts and Python it almost always gets something workable first try, genuinely saving time.

    AI LLMs are pretty terrible for nearly every other task I’ve tried. I suspect it’s because the same amount of quality training data just doesn’t exist for other fields.

    • expr@programming.dev
      link
      fedilink
      English
      arrow-up
      17
      arrow-down
      2
      ·
      10 days ago

      Actually typing out code has literally never been the bottleneck. It’s a vanishingly small amount of what we do. An experienced engineer can type out bash or Python scripts without so much as blinking. And better yet, they can do it without completely fabricating commands and library functions.

      The hard part is truly understanding what it is you’re trying to do in the first place, and that fundamentally requires a level of semantic comprehension that LLMs do not in any way possess.

      It’s very much like the “no code” solutions of yesteryear. They sound great on paper until you’re faced with the reality of the buggy, unmaintainable nightmare pile of spaghetti code that they vomit into your repo.

      LLMs are truly a complete joke for software development tasks. I remain among the top 3-4 developers in terms of speed and output at my workplace (and all of the fastest people refuse to use LLMs as well), and I don’t create MRs chock full of bullshit that has to be ripped out (fucking sick of telling people to delete absolutely useless tests that do nothing but slow down our CI pipeline). The slowest people are those that keep banging their head against the LLM for “efficiency” when it’s anything but.

      It’s the fucking stupidest trend I’ve seen in my career and I can’t wait until people finally wake up and realize it’s both incredibly inefficient and incredibly wasteful.

    • Badabinski@kbin.earth
      link
      fedilink
      arrow-up
      12
      ·
      10 days ago

      Oh god, please don’t use it for Bash. LLM-generated Bash is such a fucking pot of horse shit bad practices. Regular people have a hard enough time writing good Bash, and something trained on all the fucking crap on StackOverflow and GitHub is inevitably going to be so bad…

      Signed, a senior dev who is the “Bash guy” for a very large team.

      • flux@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        9 days ago

        The problem isn’t the tool, it’s the user: they don’t know if they’re getting good code or not, therefore they cannot make the prompt to improve it.

        In my view the problems occur when using AI to do something you don’t already know how to do.

    • mcv@lemmy.zip
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 days ago

      I’ve found it’s pretty good at refactoring existing code to use a different but well-supported and well documented library. It’s absolutely terrible for a new and poorly documented library.

      I recently tried using Copilot with Claude to implement something in a fairly young library, and did get the basics working, including a long repetitive string of “that doesn’t work, I’m getting error msg [error]”. Seven times of that, and suddenly it worked! I was quite amazed, though it failed me in many other ways with that library (imagining functions and options that don’t exist). But then redoing the same thing in the older, better supported library, it got it right on the first try.

      But maybe the biggest advantage of AI coding is that it allows me to code when my brain isn’t fully engaged. Of course the risk there is that my brain might not fully engage because of the AI.