• BlameTheAntifa@lemmy.world
    link
    fedilink
    English
    arrow-up
    27
    arrow-down
    1
    ·
    edit-2
    8 days ago

    If you are wondering how it could possibly be “worth it” the end of the article has this.

    The Fastly survey found that senior developers were twice as likely to put AI-generated code into production compared to junior developers, saying that the technology helped them work faster.

    So vibes. Vibe coding is “worth it” because people got good vibes.

    The research shows that - while engineers think AI makes them more about 20% more productive - it actually causes an approximate 20% slow-down.

    AI cannot use logic or reason. Everything it outputs is a hallucination, even if it’s sometimes accurate. You cannot trust anything it outputs.

    • BrianTheeBiscuiteer@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      8 days ago

      If I try to get it to do more than predict the next two lines of code it’s gonna fuck something up. A nervously laughable thing I saw at work was someone using a long spec file to generate a series of other files and getting high praise for it. It was the equivalent of mustache templates but slower and with a 30% chance of spitting out garbage. There was also no way to verify if you were in that 30% zone without looking through the dozens of files it made.

    • Victor@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 days ago

      But surely you test the code and review it, right? That’s how you reinstate trust in what it outputs?

      Disclaimer: I’ve never used AI to code, not even copilot.

      • BlameTheAntifa@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        9 days ago

        You mean rewrite it all from scratch? If you have any kind of standards that is what you end up doing. If you know what you’re doing you do it right the first time and move on. Using AI for coding it like trying to babysit the most inept, inexperienced intern to ever walk the earth. It wastes time and the end result is far worse.

        • Victor@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          8 days ago

          That’s what I’m afraid of, and it doesn’t seem like employers are aware of this in general. Irks me especially as a consultant.

      • Serinus@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        9 days ago

        It’ll sometimes do dumb and/or redundant or too complicated shit. Pile up a couple of those and your codebase can get unmaintainable fast.

        I find if you give it small chunks and keep an eye on it, it’s great.

        I think one of my recent prompts was “Create a procedure that creates an example configuration file with placeholder values. If a config file doesn’t exist on start, give a warning and create the example config.”

        It also works great as a replacement for an ORM.

  • themeatbridge@lemmy.world
    link
    fedilink
    English
    arrow-up
    24
    arrow-down
    2
    ·
    9 days ago

    Senior devs love vibe coding because they have the knowledge and skills to recognize and fix errors. They hate it because it makes morons think they don’t need the knowledge and skills to recognize and fix errors.

    • 5C5C5C@programming.dev
      link
      fedilink
      English
      arrow-up
      22
      ·
      9 days ago

      As a senior dev I hate vibe coding. I can write code an order of magnitude faster than I can review it, because reviewing code forces you to piece together a mental model for something made by someone else, whereas when I write the code myself I get to start with the mental model already in my head.

      Writing code is never the bottleneck for me. If I understand the problem well enough to write a prompt for an LLM, then I understand the problem well enough to write the code for it.

      • Serinus@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        9 days ago

        I understand how to turn the results of a select statement into an update statement, but the AI does it a hell of a lot faster.

        I find if you give it small enough chunks, it’s easy enough to review. And even if you do have to correct, it’s generally easier to correct than it would be to write it all by hand.

        • 5C5C5C@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          8 days ago

          Outside of my own specialty I can people in the software industry bogged down by managing excessive boilerplate. I think this happens most often in web dev and data science.

          In my opinion this is an indication that the software tools for those ecosystems need improvement, but rather than putting in the design effort to improve the tools in the ecosystem, these Big Data companies see an opportunity to just throw LLMs at it and call it a commercial product.

          • Serinus@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            5 days ago

            putting in the design effort to improve the tools in the ecosystem

            They have. The problem is that they generally cause as many problems as they solve. Adding another layer in software is often as harmful as it is helpful.

            LLMs are nice in this regard, because they don’t really add another layer, but they do take care of the excessive boilerplate that’s easily understandable.

  • criss_cross@lemmy.world
    link
    fedilink
    English
    arrow-up
    13
    ·
    8 days ago

    This feels like one of those paid fluff pieces companies put out so that smaller ones feel like they’re “missing out”

  • I Cast Fist@programming.dev
    link
    fedilink
    English
    arrow-up
    12
    ·
    8 days ago

    Carla Rover once spent 30 minutes sobbing after having to restart a project she vibe coded. Rover has been in the industry for 15 years, mainly working as a web developer. She’s now building a startup, alongside her son, that creates custom machine learning models for marketplaces.

    Using AI to sell AI, infinite money glitch! /s

    “Using a coding co-pilot is kind of like giving a coffee pot to a smart six-year-old and saying, ‘Please take this into the dining room and pour coffee for the family,’” Rover said. Can they do it? Possibly. Could they fail? Definitely. And most likely, if they do fail, they aren’t going to tell you.

    No, a kid will learn if s/he fucks up and, if pressed, will spill the beans. AI is, despite being called “intelligent”, not learning anything from its mistakes and often forgetting things because of limitations - consistency is still one of the key problems for all LLM and image generators

    • squaresinger@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      1
      ·
      8 days ago

      If you bring a 6yo into office and tell them to do your work for you, you should be locked up. For multiple reasons.

      Not sure why they thought that was a positive comparison.

    • Knock_Knock_Lemmy_In@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 days ago

      AI is, despite being called “intelligent”, not learning anything from its mistakes

      Don’t they also train new models on past user conversations?

        • Knock_Knock_Lemmy_In@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 days ago

          Chatgpt5 can count the number of 'r’s, but that’s probably because it has been specifically trained to do so.

          I would argue that the models do learn, but only over generations. So slowly and specifically.

          They definitely don’t learn intelligently.

          • hark@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            7 days ago

            That’s the P in ChatGPT: Pre-trained. It has “learned” based on the set of data it has been trained on, but prompts will not have it learn anything. Your past prompts are kept to use as “memory” and to influence output for your future prompts, but it does not actually learn from them.

            • Knock_Knock_Lemmy_In@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              7 days ago

              The next generation of GPT will include everyone’s past prompts (ever been A/B tested on openAI?). That’s what I mean by generational learning.

              • hark@lemmy.world
                link
                fedilink
                English
                arrow-up
                2
                ·
                7 days ago

                Maybe. It’s probably not high quality training data for the most part, though.

  • wulrus@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    8 days ago

    Currently, I write all production code at work without any AI assistance. But to keep up with things, I do my own projects.

    Main observation: When I use it (Claude Code + IDE-assistant) like a fancy code completion, it can save a lot of time. But: It must be in my own area of expertise, so I could do it myself just as well, only slower. It makes a mistake about 10 - 20 % of the time, most of them not obvious like compile errors, so it would turn the project into disaster over time. Still, seems like a senior developer could be about 50% - 100% more productive in the heat of the implementation phase. Most important job is to say “STOP” when it’s about to do nonsense. The resulting code is pretty much exactly how I would have done it, and it saved time.

    I also tried “vibe coding” by using languages and technologies that I have no experience with. It resulted in seemingly working programs, e. g. to extract and sort photos from an outdated data file format, or to parse a nice statistics out of 1000 lines of annual private bank statements. Especially the latter resulted in 500 lines of unmaintainable Python-spaghetticode. Still nice for my private application, but nobody in the world can guarantee that there aren’t pennies missing, or income and outcome switched in the calculation. So unusable for the accounting of a company or anything like that.

    I think it will remain code completion for the next 5 years. The bubble of trying more than next-gen code completion for seniors will burst. What happens then is hard to say, but it takes significant breakthroughs to replace a senior and work independently.

    • squaresinger@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      8 days ago

      In real code, so after the first week of development, typing really isn’t what I spend most of my time on. Fancy autocomplete can sometimes be right and then it saves a few seconds, but not nearly 50-100% added productivity. Maybe more like 1-2%.

      If I get a single unnecessary failed compile from the autocomplete code, it loses me more time than it saved.

      But it does feel nice not having to type out stuff.

      That’s why all research on this topic says that AI assistance feels like a 20-30% productivity boost (when the developers are asked to estimate how much time they saved) while the actual time spent on the task actually goes up by 20-30% (so productivity gets lost).

      • wulrus@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        8 days ago

        I find it also saves a certain “mental energy”.

        E. g. when I worked on a program to recover data from the old discontinued Windows photo app: I started 2 years ago and quickly had a proof-of-concept: Found out it’s just sqlite format, checked out the table structure, made a query to list the files from one album. So at that point, it was clear that it was doable, but the remaining 90 % would be boring.

        So after 2 years on pause, I just gave Gemini 2.5Pro the general problem and the two queries I had. It 1-shot a working powershell script, no changes required. It reads directly from the sqlite (imagine the annoyance to research that when you never ever use powershell!) and put the files to folders named by the former albums. My solution would have been worse, would probably have gone with just hacking together some copy-commands from SELECT and run them all once.

        That was pretty nice: I got to do the interesting part of building the SQL queries, and it did the boring, tiring things for me.

        Overall, I remain sceptical as you do. There is definitely a massive bullshit-bubble, and it’s not clear yet where it ends. I keep it out of production code for now, but will keep experimenting on the side with an “it’s just code completion” approach, which I think might be viable.

        • squaresinger@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          8 days ago

          Yours is pretty much the best-case scenario for AI:

          • Super small project, maybe a few dozen lines at most
          • Greenfield: no dependencies, no old code, nothing to consider apart from the problem at hand
          • Disposable: once the job is done you discard it and won’t need to maintain it
          • Someone most likely already did the same thing or did something very similar and the LLM can draw on that, modify it slightly and serve it as innovation
          • It’s a subject where you are good enough that you can verify what the LLM spits out, but where you’d have to spend hours and hours to read into how to do it

          For that kind of stuff it’s totally OK to use an LLM. It’s like googleing, finding a ready-made solution on Stackexchange, running that once and discarding it, just in a more modern wrapping. I’ve done something similar too.

          But for real work on real projects, LLM is more often than not a time waster and not a productivity gain.

          • wulrus@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            ·
            8 days ago

            That’s completely true; it’s hard for me to judge on a small scale when I won’t (for good reasons) let it touch my customer’s production code.

  • vane@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    8 days ago

    Looks like every senior developer is building vibe coded startup and their children are selling machine learning models on marketplaces. Anyone know of such marketplace or it’s fake as much as the article ?

  • Avicenna@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    7 days ago

    All this depends critically on one premise: that sometime in near future AI coders will become fully automated and produce senior level code. If not we are wholly fucked because currently they are employing less and less junior coders which means that we will be running very low on number of senior coders in a decade or so. If LLMs still need supervision by then there won’t be enough senior coders to do so.

  • hark@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    1
    ·
    7 days ago

    I’ve used it to explore some avenues without having to write a complete implementation. If the approach shows promise, then I go through the code and mostly rewrite it because the code it generates is terrible. I also use it if I don’t care about the project I’m on. They want to “do test-driven development” while having poorly-defined requirements that constantly change on a whim while also setting unreasonable unit test coverage thresholds? Cool, I’ll let the AI shit out a bunch of unit tests and waffle stomp it to satisfy your poorly thought out project requirements.

    • kinther@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 days ago

      I agree with you on this. Let it handle things you don’t care about and massage the output if necessary. Anything I do care about, I code myself, but will ask for help if I get stuck on something. I’m a novice programmer at best, 18/100 skill score.

  • podbrushkin@mander.xyz
    link
    fedilink
    English
    arrow-up
    1
    ·
    8 days ago

    A day will come when I get to know what vibecoding is. Or maybe this word will die out sooner. You never know.

  • Dr. Moose@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    edit-2
    8 days ago

    This topic is always twisted and based on some random bait surveys. Yes I’d commit AI code but mostly because that code does a test or implements some one off function that I read through anyway.

    Do I enjoy baby sitting AI? Eh its a mix bag. Its great for writing tests and boilerplate and bootstrap you into real solutions but I dread any code base that claims their mostly written by cloude code. The AI is still incredibly stupid.

    I think rubber duck is really the best feature of AI. I’ve been working remotely for over 20 years now and it’s such a game changer just to bounce ideas and architecture designs with a chat bot. This feature should be revolutionary enough without the need for independent agents.