• Korne127@lemmy.world
    link
    fedilink
    arrow-up
    55
    arrow-down
    1
    ·
    2 years ago

    In my experience, you can’t expect it to deliver great working code, but it can always point you in the right direction.
    There were some situations in which I just had no idea on how to do something, and it pointed me to the right library. The code itself was flawed, but with this information, I could use the library documentation and get it to work.

    • uhN0id@programming.dev
      link
      fedilink
      English
      arrow-up
      13
      arrow-down
      1
      ·
      2 years ago

      ChatGPT has been spot on for my DDLs. I was working on a personal project and was feeling really lazy about setting up a postgres schema. I said I wanted a postgres DDL and just described the application in detail and it responded with pretty much what I would have done (maybe better) with perfect relationships between tables and solid naming conventions with very little work for me to do on it. I love it for more boilerplate stuff or sorta like you said just getting me going. Super complicated code usually doesn’t work perfectly but I always use it for my DDLs now and similar now.

      The real problem is when people don’t realize something is wrong and then get frustrated by the bugs. Though I guess that’s a great learning opportunity on its own.

    • danc4498@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      2 years ago

      It’s the same with using LLM’s for writing. It won’t deliver a finished product, but it will give you ideas that can be used in the final product.

  • nikaaa@lemmy.world
    link
    fedilink
    arrow-up
    39
    arrow-down
    2
    ·
    2 years ago

    My dad’s re-learning Python coding for work rn, and AI saves him a couple of times; Because he’d have no idea how to even start but AI points him in the right direction, mentioning the correct functions to use and all. He can then look up the details in the documentation.

      • EatATaco@lemm.ee
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        1
        ·
        2 years ago

        And before stack overflow, we used books. Did we need it? No. But stack overflow was an improvement so we moved to that.

        In many ways, ai is an improvement on stack overflow. I feel bad for people who refuse to see it, because they’re missing out on a useful and powerful tool.

        • GodIsNull@discuss.tchncs.de
          link
          fedilink
          arrow-up
          4
          ·
          2 years ago

          It can be powerful, if you know what you are doing. But it also gives you a lot of wrong answers. You have to be very specific in your prompts to get good answers. If you are an experience programmer, you can spot if the semantics of the code an ai produces is wrong, but for beginners? They will have a lot of bugs in their code. And i don’t know if it’s more helpful than reading a book. It surely can help with the syntax of different programming languages. I can see a future where ai assistance in coding will become better but as of know, from what i have seen, i am not that convinced atm. And i tested several, chatgpt (in different versions), github co-pilot, intellij ai assitant, claude 3, llama 3.

          And if i have to put in 5 or more long, very specific sentences, to get a function thats maybe correct, it becomes tedious and you are most likely faster to think about a problem in deep and code a solution all by yourself.

          • EatATaco@lemm.ee
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            1
            ·
            2 years ago

            but for beginners? They will have a lot of bugs in their code.

            Everyone has lots of bugs in their code, especially beginners. This is why we have testing and qa and processes to minimize the risk of bugs. As the saying goes, “the good news about computers is that they do what you tell them to do. The bad n was is that they do what you tell them to do.”

            Programming is an iterative process where you do something, it doesn’t work, and then you give it another go. It’s not something that senior devs get right on the first try, while beginners have to try many times. It’s just that senior devs have seen a lot more so have a better understanding of why it probably went wrong, and maybe can avoid some more common pitfalls the first time around. But if you are writing bug free code in your first pass, well you’re a way better programmer than anyone I’ve met.

            Ai is just another tool to make this happen. Sure, it’s not always the tool for the job, just like IoC is not always the right tool for the job. But it’s nice to have it and sometimes it makes things much easier.

            Like just now I was debugging a large SQL query. I popped it into copilot, asked if to break it into parts so I could debug. It gave a series of smaller queries that I then used to find the point where it fell apart. This is something that would have taken me at least a half hour of tedious boring work, fixed in 5 minutes.

            Also for writing scripts. I want some data formatted so it was easier to read? No problem, it will spit out a script that gets me 90% of the way there in seconds. Do I have to refine it? Absolutely. But if I wrote it myself, not being super prolific with python, it would have taken me a half hour to get the structure in place, and then I still would have had to refine it because I don’t produce perfect code the first time around. And it comments the scripts, which I rarely do.

            What also amazes me is that sometimes it will spit out code and I’ll be like “woah I didn’t even know you could do that” and so I learned a new technique. It has a very deep “understanding” of the syntax and fundamentals of the language.

            Again, I find it shocking that experienced devs don’t find it useful. Not living up to the hype I get. But not seeing it as a productivity boosting tool is a real head scratcher to me. Granted, I’m no rockstar dev, and maybe you are, but I’ve seen a lot of shit in my day and understand that I’m legitimately a senior dev.

      • monkeyman512@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 years ago

        Have you used Google lately? At least chatGPT doesn’t make me scroll past a full page of ads before giving me a half wrong answer.

  • MystikIncarnate@lemmy.ca
    link
    fedilink
    English
    arrow-up
    34
    arrow-down
    1
    ·
    2 years ago

    AI in the current state of technology will not and cannot replace understanding the system and writing logical and working code.

    GenAI should be used to get a start on whatever you’re doing, but shouldn’t be taken beyond that.

    Treat it like a psychopathic boiler plate.

      • JackGreenEarth@lemm.ee
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        3
        ·
        2 years ago

        I want to be made obsolete, so none of us have to have jobs and we can spend all our time doing what we like. It won’t happen without a massive social systemic change, but it should be the goal. Wanting others to have to suffer because you think you should get rewarded for working hard is very selfish and the fallacy of investment, that you feel you should continue a bad investment even if you know it’s harmful or it would be quicker to start over, because you feel you don’t want your earlier effort to go to waste.

          • JackGreenEarth@lemm.ee
            link
            fedilink
            English
            arrow-up
            1
            arrow-down
            1
            ·
            2 years ago

            You really think when we actually have the power to automate all labour the 1% are still going to be able to hoard all the resources? Now, when people have to work to live, it dissuades them from protesting the system. But once all labour is actually automated, there would be nothing to prevent the 99% from rightfully rising up against the 1% trying to hoard all the resources (which the 1% generated without any effort) and forcing societal/structural change.

            • ChickenLadyLovesLife@lemmy.world
              link
              fedilink
              English
              arrow-up
              5
              arrow-down
              1
              ·
              2 years ago

              there would be nothing to prevent the 99% from rightfully rising up against the 1%

              Except for the other 1% who are trained and equipped to violently suppress the 98%. And if for whatever reason they fail to do the job, the killer robots will do it instead.

  • Snapz@lemmy.world
    link
    fedilink
    arrow-up
    24
    ·
    2 years ago

    Except AI doesn’t say “Is this it?”

    It says, “This is it.”

    Without hesitation and while showing you a picture of a dog labeled cat.

    • Drewelite@lemmynsfw.com
      link
      fedilink
      English
      arrow-up
      3
      ·
      2 years ago

      The best one I’ve used for coding is the InelliJ AI. Idk how they trained that sucker but it’s pretty good at ripping through boiler plate code and structuring new files / methods based off how your project is already setup. It still has those little hallucinations especially when you ask it to figure out more niche tasks. But It’s really increased my productivity. Especially when getting a new repo setup. (I work with micro services)

      • Passerby6497@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 years ago

        Yeah, formatting is the only place that I really enjoy using AI. It’s great at pumping out blocks of stuff and frequently gets the general idea of what I’m going for with successive variables or tasks. But when you ask it to do complex things it wigs out. Like yesterday when it spit out a regex to look for something within multiple encapsulation chars just fine, but telling it to remove one of the chars it was looking for was impossible, apparently. Spent 5 min doing something I figured out in 2 minutes on a regex test site.

    • MagicShel@programming.dev
      link
      fedilink
      arrow-up
      7
      ·
      2 years ago

      AI coding in a nutshell. It makes the easy stuff easier and the hard stuff harder by leading you down thirty incorrect paths before you toss it and figure it out yourself.

  • Deceptichum@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    12
    arrow-down
    2
    ·
    2 years ago

    So what it’s really like is only having to do half the work?

    Sounds good, reduced workload without some unrealistic expectation of computers doing everything for you.

    • takeda@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      2 years ago

      From my experience all the time (probably even more) it saves me is wasted on spotting bugs and the bugs are in very subtle places.

  • onlinepersona@programming.dev
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    5
    ·
    2 years ago

    Code is the most in depth spec one can provide. Maybe someday we’ll be able to iterate just by verbally communicating and saying “no like this”, but it doesn’t seem like we’re quite there yet. But also, will that be productive?

    Anti Commercial-AI license

    • RecluseRamble@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      13
      arrow-down
      1
      ·
      edit-2
      2 years ago

      Makes sense. It’s like having your personal undergrad hobby coder. It may get something right here and there but for professional coding it’s still worse than the gold standard (googling Stackoverflow).

      • SparrowRanjitScaur@lemmy.world
        link
        fedilink
        arrow-up
        7
        ·
        2 years ago

        Nah, you just need to be really specific in the requirements you give it. And if the scope of work you’re asking for is too large you need to do the high level design and decompose it into multiple parts for chatgpt to implement.

      • jaschen@lemm.ee
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        2 years ago

        I know zero coding and trying to query something in snowflake or big query is basically not accessible to me. This is basically a cheat code for me.

        • EatATaco@lemm.ee
          link
          fedilink
          English
          arrow-up
          3
          ·
          2 years ago

          I’m a senior dev, and copilot as a productivity tool usually pays for the monthly license multiple times per week.

          Whenever I hear someone say it’s useless, that tells me they are either some godlike dev who knows everything already (lol), they haven’t actually used it, they are not good at integrating new tools into their workflow, or they simply haven’t learned how to use it yet.

          • Daxtron2@startrek.website
            link
            fedilink
            arrow-up
            2
            ·
            2 years ago

            Whenever I hear that its useless I ask them to show me how they’re using it. Its almost always exactly what’s happening in this comic with just a tiny bit more detail lol. I think a lot of people are stuck under the assumption that a smaller more concise query is better when its really the opposite that is true. The more information you give and the more you let the LLM work through a problem with followup questions, the better the output. Its like a new Jr Dev who knows their stuff, but struggles with asking clarifying questions.

  • Ziglin (it/they)@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    2 years ago

    My new favourite is asking GitHub copilot (which I would not pay for out of my own pocket) why the code I’m writing isn’t working as intended and it asks me to show it the code that I already provided.

    I do like not having copy and paste the same thing 5 times with slight variations (something it usually does pretty well until it doesn’t and I need a few minutes to find the error)