• lemmydividebyzero@reddthat.comOP
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    4 days ago

    I think, there are useful use cases and bad ones.

    bad

    • “Generate me a web project for XY” is fine to see what a prototype could look like, but pushing that to production is a bad idea IMO.
    • “Write me unit tests for XY” is bad IMO. At this point, the unit tests are bureaucracy.
    • “Generate documentation”… same… At this point, documentation is bureaucracy, but I have seen that in the years before AI, too.
    • “Writing commits and pull requests or tickets”… I don’t like that use case either. I’m able to find my commits or bugs later, because I remember words. I like writing them myself.

    don’t know

    • have never used it to review my commits…

    good

    • Generate me a throw-away shell script to do XY (I can still modify it if I want to), but Bash/PowerShell/… are not my main programming languages and it saves me time. Of course, doing it this way, I won’t learn them. I’m aware of that.
    • Aiming it on code to find bugs is the most useful use case I found so far.
    • Code-line completion is also often useful. It completes what I’m thinking.

    If you think LLM is good at X, it’s because you really really suck at X

    I though similar a year ago, but nowadays, I disagree. Around Claude 4.6, that changed.

    • I think, giving it a piece of the code base and letting it find a bug does not prove that I don’t have the skill to do so. I just don’t have the time to go through the whole code base. But I have the time to analyze a potential bug and see whether it’s a real one.
    • This guy disagrees with you, too… A year earlier, he said, AI was not usable, because they are doing too complex stuff. https://devblogs.microsoft.com/dotnet/ten-months-with-cca-in-dotnet-runtime/

    Moral: The technology won’t go away. I am honest: I preferred the times before LLMs, too… And I hate how some people with a coding agent turn off their brain and commit bullshit. I have seen it. But saying that it does not (or even will not) bring any benefit and that the users all suck at their job is far from true.

    • Deestan@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      6
      ·
      4 days ago

      I don’t care whether it goes away. Neither have tapeworms, and while some people claim it helps with weight loss, most people are not up for it.

      The first usecase: One-off scripts. That is “do my homework for me” help. You can spend a minute reading the manual instead. Next time you do it, you can do it faster than through the LLM.

      The second usecase touches on something you might be bad at: abstractions and maintainability. We already had autocomplete. Autocompleting a block of code is a sign that you are not writing anything new and a signal to think about whether there is semantic duplication in the code that should be explored. Avoiding the annoyance of writing the block is you solving the wrong problem.

      • eodur@piefed.social
        link
        fedilink
        English
        arrow-up
        6
        ·
        4 days ago

        I disagree on both of those. One off scripts are generally low value. I’ve probably written tens of thousands of lines of bash, but I still look up syntax every time because I purge the low value info when I’m done.

        And autocomplete is exactly there for boilerplate and obvious code. There is ALWAYS a need for that code. Trying to abstract away all duplication will often burn a lot of new brain cycles for both the original engineer and the next engineer that has to maintain it. Sometimes the straightforward code is the best code. And that isn’t even touching on bootstrapping a new project which will necessarily require a lot of that basic repetitive code.

        I’m still an AI skeptic and anti-AI, but you can be opposed to something while still recognizing it’s use.

      • lemmydividebyzero@reddthat.comOP
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        4 days ago

        You can spend a minute reading the manual instead. Next time you do it, you can do it faster than through the LLM.

        I talked about writing a script that can be 20 to 50 lines. That costs me far more than “a minute” of manual reading. I generate the script, I review it, I execute it and then throw it away. Sounds like a win-situation for me. I have more time for my actual homework.

        Autocompleting a block of code

        I wrote “Code-line” completion by the way, not “Code block” completion.

        Autocompleting a block of code is a sign that you are not writing anything new and a signal to think about whether there is semantic duplication in the code that should be explored.

        Have you ever tried it out (e.g. GitHub Copilot)? Not sure what you mean exactly, especially by “writing anything new”. It can of course auto-complete stuff that does not exist in the code base. There is lots of code in the training data. Or do you mean “writing completely new stuff that hasn’t been written by anyone”? Because only few people do that, I guess.


        One more good usage I experienced is giving it text (e.g. a documentation file for customers) and the task to find/fix the typos. I’m pretty good at finding them (at least in my native language German), but you probably guessed it: I’d rather do other stuff.