• Katana314@lemmy.world
    link
    fedilink
    English
    arrow-up
    27
    ·
    8 hours ago

    I’m in a workplace that has tried not to be overbearing about AI, but has encouraged us to use them for coding.

    I’ve tried to give mine some very simple tasks like writing a unit test just for the constructor of a class to verify current behavior, and it generates output that’s both wrong and doesn’t verify anything.

    I’m aware it sometimes gets better with more intricate, specific instructions, and that I can offer it further corrections, but at that point it’s not even saving time. I would do this with a human in the hopes that they would continue to retain the knowledge, but I don’t even have hopes for AI to apply those lessons in new contexts. In a way, it’s been a sigh of relief to realize just like Dotcom, just like 3D TVs, just like home smart assistants, it is a bubble.

    • jj4211@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 hour ago

      I’ve found that as an ambient code completion facility it’s… interesting, but I don’t know if it’s useful or not…

      So on average, it’s totally wrong about 80% of the time, 19% of the time the first line or two is useful (either correct or close enough to fix), and 1% of the time it seems to actually fill in a substantial portion in a roughly acceptable way.

      It’s exceedingly frustrating and annoying, but not sure I can call it a net loss in time.

      So reviewing the proposal for relevance and cut off and edits adds time to my workflow. Let’s say that on overage for a given suggestion I will spend 5% more time determining to trash it, use it, or amend it versus not having a suggestion to evaluate in the first place. If the 20% useful time is 500% faster for those scenarios, then I come out ahead overall, though I’m annoyed 80% of the time. My guess as to whether the suggestion is even worth looking at improves, if I’m filling in a pretty boilerplate thing (e.g. taking some variables and starting to write out argument parsing), then it has a high chance of a substantial match. If I’m doing something even vaguely esoteric, I just ignore the suggestions popping up.

      However, the 20% is a problem still since I’m maybe too lazy and complacent and spending the 100 milliseconds glancing at one word that looks right in review will sometimes fail me compared to spending 2-3 seconds having to type that same word out by hand.

      That 20% success rate allowing for me to fix it up and dispose of most of it works for code completion, but prompt driven tasks seem to be so much worse for me that it is hard to imagine it to be better than the trouble it brings.

    • RamenJunkie@midwest.social
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      2 hours ago

      I find its good at making simple Python scripts.

      But also, as I evolve them, it starts randomly omitting previous functions. So it helps to k ow what you are doing at least a bit to catch that.

    • MangoCats@feddit.it
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      7 hours ago

      The first half dozen times I tried AI for code, across the past year or so, it failed pretty much as you describe.

      Finally, I hit on some things it can do. For me: keeping the instructions more general, not specifying certain libraries for instance, was the key to getting something that actually does something. Also, if it doesn’t show you the whole program, get it to show you the whole thing, and make it fix its own mistakes so you can build on working code with later requests.

      • SocialMediaRefugee@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 hours ago

        I’ve had good results being very specific, like “Generate some python 3 code for me that converts X to Y, recursively through all subdirectories, and converts the files in place.”

        • MangoCats@feddit.it
          link
          fedilink
          English
          arrow-up
          3
          ·
          3 hours ago

          I have been more successful with baby steps like: “Write a python 3 program that converts X to Y.” Tweak prompt until that’s working as desired, then: “make it work recursively through all subdirectories” - and again tweak with specifics like converting the files in place, etc. Always very specific, also - force it to fix its own bugs so you can move forward with a clean example as you add complexity. Complexity seems to cap out at a couple of pages of code, at which point “Ooops, something went wrong.”

      • vivendi@programming.dev
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        1
        ·
        7 hours ago

        Have you tried insulting the AI in the system prompt (as well as other tunes to the system prompt)?

        I’m not joking, it really works

        For example:

        Instead of “You are an intelligent coding assistant…”

        “You are an absolute fucking idiot who can barely code…”

        • rozodru@lemmy.world
          link
          fedilink
          English
          arrow-up
          7
          ·
          6 hours ago

          “You are an absolute fucking idiot who can barely code…”

          Honestly, that’s what you have to do. It’s the only way I can get through using Claude.ai. I treat it like it’s an absolute moron, I insult it, I “yell” at it, I threaten it and guess what? the solutions have gotten better. not great but a hell of a lot better than what they used to be. It really works. it forces it to really think through the problem, research solutions, cite sources, etc. I have even told it i’ll cancel my subscription to it if it gets it wrong.

          no more “do this and this and then this but do this first and then do this” after calling it a “fucking moron” and what have you it will provide an answer and just say “done.”

            • MangoCats@feddit.it
              link
              fedilink
              English
              arrow-up
              5
              arrow-down
              1
              ·
              6 hours ago

              He’s developing a toxic relationship with his AI agent. I don’t think it’s the best way to get what you want (demonstrating how to be abusive to the AI), but maybe it’s the only method he is capable of getting results with.

        • MangoCats@feddit.it
          link
          fedilink
          English
          arrow-up
          5
          ·
          6 hours ago

          I frequently find myself prompting it: “now show me the whole program with all the errors corrected.” Sometimes I have to ask that two or three times, different ways, before it coughs up the next iteration ready to copy-paste-test. Most times when it gives errors I’ll just write "address: " and copy-paste the error message in - frequently the text of the AI response will apologize, less frequently it will actually fix the error.