ChatGPT Isn’t as Good at Coding as We Thought::undefined

  • daikiki@lemmy.world
    link
    fedilink
    English
    arrow-up
    35
    arrow-down
    2
    ·
    edit-2
    1 year ago

    I’ve experimented a bit with chatGPT, asking it to create some fairly simple code snippets to interact with a new API I was messing with, and it straight up confabulated methods for the API based on extant methods from similar APIs. It was all very convincing, but if there’s no way of knowing that it’s just making things up, it’s literally worse than useless.

    • sheogorath@lemmy.world
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 year ago

      ChatGPT has been helpful in being an interactive rubber duck. I used it to help myself breakdown the technical problems that I need to solve and it helps to cut down time taken to complete a difficult ticket that usually take a couple of days of work to a couple of hours.

    • tbonebrad@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      1 year ago

      I’ve had similar experiences with it telling me to call functions of third party libs that don’t exist. When you tell it “That function X does not exist” it says “I’m sorry, your right function X does not exist on library A. here is another example using function Y” then function Y doesn’t exist either.

      I have found it useful in a limited scope, but I have found co-pilot to be much more of a daily time saver.

    • abhibeckert@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      7
      ·
      edit-2
      1 year ago

      So? Those mistakes will come up in testing, and you can easily fix them (either yourself, or ask it to do it for you, whichever is faster).

      I regularly ask ChatGPT to write code against classes/functions that didn’t exist until earlier today when I wrote those APIs. Obviously the model doesn’t know those APIs… but it doesn’t matter, you can just paste the function list or whole class definitions in and now it does know they’re there and will use them.

    • TropicalDingdong@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      10
      ·
      1 year ago

      Except that in code, you can write unit tests and have checks that it absolutely has to get precisely correct.

      • nbafantest@lemmy.world
        link
        fedilink
        English
        arrow-up
        15
        arrow-down
        1
        ·
        1 year ago

        If you have to write the code and tests yourself… That’s just normal coding then

        • abhibeckert@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          1 year ago

          You don’t, you get it to write both the code and the tests. And you read both of them yourself. And you run them in a debugger to verify they do what you expect.

          Yeah, that’s half the work of “normal coding” but it’s also half the work. Which is a pretty awesome boost to productivity.

          But where it really boosts your productivity is with APIs that you aren’t very familiar with. ChatGPT is a hell of a lot better than Google for simple “what API can I use for X” questions.

          • nbafantest@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            1
            ·
            1 year ago

            You might have to rewrite all of it. The code and the tests.

            Hell even the structure/outline it took might not be correct.

  • JoBo@feddit.uk
    link
    fedilink
    English
    arrow-up
    24
    ·
    1 year ago

    As who thought? There have been examples of wonky code being posted since the day it went live.

    • Jagger2097@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      1 year ago

      That wonky code went into thousands of wonky scripts that barely work. People got promoted and the next fool gets to debug in ChatGPT5 or whatever

  • shotgun_crab@lemmy.world
    link
    fedilink
    English
    arrow-up
    18
    ·
    edit-2
    1 year ago

    I always thought of chat gpt as a “companion tool” that isn’t meant to write good code by itself, but to help experienced programmers write good code (just like search engines and documentation)

    • Ratz@chatsubo.hiteklolife.net
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      Have you used it for this lately?

      I want to believe it used to be okay for this, but just yesterday I uses it to generate some pretty basic bash and I’m honestly not convinced it saved me any time after I cleaned it all up and actually made it functional

  • Bobby Turkalino@lemmy.yachts
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    2
    ·
    1 year ago

    I asked it to write a bash script which simply read a couple inputs using readline and then ran a couple commands inside an if/else

    It declared a variable that it never used. I pointed out the mistake and asked to remove the line. It simply renamed the variable.

    I’d trust an unpaid intern more

  • Immersive_Matthew@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    3
    ·
    1 year ago

    I am using ChatGPT 4+ with the code interpreter to code c# scripts inside my Unity project and it works and to be unreliable, b it about a month ago when the code interpreter came out it became very useful. Like it rarely makes a compile error and when it does it often fixes it with no further issues. The code it writes is solid and it has even been able to write multiple, interacting scripts with singletons, etc to do all sorts of more complex things in Unity. It has saved my so much time I am blown away. Some of these scripts are 200-300 lines. Beyond 300 it seems to have many issues though al really only good for the smaller stuff, which is mostly what Unity tends to be.

    It is also amazing as feeding it error logs and having it tell you the bits that matter and why. Everyone should be using it for this at a minimum.

    I love it, but look forward to the day where it is in my Unity project editor and is able to see all and address all the ridiculous and mundane issues that consume far too much of my time and other developers time. Just finished implementing AssetBundles with it, which triggered many of my scripts needing to be updated, which it did in just a few seconds each. Amazing.

  • Cyo@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    1 year ago

    It can be useful for basic coding or to answer questions like ‘Is there any way to do X thing in Javascript?’ I were talking about it with some classmates , they said the same. There was one program I was doing on my own with Js & Html (I’m still learning) and for relying to much on GPT without much knowledge I ended up “walking on circles” for 6 Hours without any progress. It is good for giving some information and sometimes finding a bug, but never, never use it as if it were capable of doing everything. It’s a tool, not a programmer.

  • ricecooker@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    I used it extensively to help me code my PHP for an art portfolio site. Briefly thought about using 11ty but needed to put something up quick after being laid off and I knew PHP.

    For the most part it was good. It was really good at creating simple functions for me. My issue came when I asked it to build me a JS lightbox in Bootstrap. i wanted it to look a certain way so I had to edit my prompt multiple times because it would edit the code and “forget” my previous modification. Ended up using someone else’s JS code.

    It was incredibly frustrating. It’s powerful, but still limited.

  • _e____b@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    1 year ago

    I don’t know how others are using chatGPT for coding, but I found I get the best results when starting small and iterate over the results few times. Like:

    1. write a function to make a GET request;
    2. write a function to handle this example JSON;
    3. write a function that combines the first two;
    4. etc etc

    I use it mostly for Typescript, Bash and Clojure and results vary from good to OK (Clojure). The whole process is way faster if you use a tool like sGPT.

  • alphacyberranger@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    1 year ago

    It’s like a rookie programmer or an intern at best. There has been times it has been really helpful though.

  • mom@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I would say is really capable at HELPING a human with coding tasks, but I found it to be kind of limited and sort of dumb. For example I was able to creare in Flask a “Ticket Management System” Web-App just for fun, but I had to do 90% of the work, and I had to be very specific along every step to make sure the output would do what I wanted and I had to provide very technical details that a beginner won’t really know. I think in the future we will have more capable tools that will create better apps without too much human interaction.

  • wpuckering@lm.williampuckering.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    Whoever thought it was good at coding? That’s not what it’s designed for. It might get lucky and spit out somewhat functional code sometimes based on the prompt, but it never constructed any of that itself. Not truly. It’s conceptually Googling what it thinks it needs, copying and pasting together an answer that seems like it might be right, and going “Here, I made this”. It might be functional, it might be pure garbage. It’s a gamble.

    You’re better off just writing your own code from the beginning. It’s likely going to be more efficient anyways, and you’ll properly understand what it does.