• squaresinger@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    6 hours 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
      3
      ·
      5 hours 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
        2
        ·
        3 hours 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.