• EnderMB@lemmy.world
    link
    fedilink
    arrow-up
    85
    ·
    1 year ago

    ChatGPT is banned by my employer, because they don’t want trade secrets being leaked, which IMO is fair enough. We work on ML stuff anyway.

    Anyway, we have a junior engineer that has been caught using ChatGPT several times, whether it’s IT flagging its use, seeing a tab open in their browser during a demo, or simply just seeing code they obviously didn’t write in code I’m reviewing.

    I recently tried to help them out on a project that uses React, and it is clear as day that this engineer cannot write code without ChatGPT. The library use is all over the place, they’ll just “invent” certain API’s, or they’ll use things that were deprecated/don’t work if you’ve even attempted to think about the problem. IMO, reliance on ChatGPT is much worse than how juniors used to be reliant on Stack Overflow to find answers to copy paste.

      • EnderMB@lemmy.world
        link
        fedilink
        arrow-up
        25
        ·
        edit-2
        1 year ago

        One of the dirty secrets at FAANG companies is that lots of people join from internships, and can get all the way to senior and above without ever needing to go through a standard, full technical loop. If you have a formal apprenticeship scheme, sometimes you’ll join through a non-tech loop.

    • Nahdahar@lemmy.world
      link
      fedilink
      arrow-up
      26
      ·
      edit-2
      1 year ago

      The underlying problem is the same, it just became more accessible to copy code you don’t understand (you don’t even need to come up with a search query that leads you to some kind of answer, chatpgt will interpret your words and come up with something). Proper use of chatgpt can boost productivity, but people (both critics of chatgpt and people who don’t actually know how to code) misuse it, look at it as a “magic solution box” instead of a tool that can assist development and lead you to solutions.

  • phorq@lemmy.ml
    link
    fedilink
    arrow-up
    66
    ·
    1 year ago

    ChatGPT just makes me feel like I’m doing code review for junior developers who don’t understand the task… wait…

  • guywithoutaname@lemm.ee
    link
    fedilink
    arrow-up
    35
    arrow-down
    1
    ·
    1 year ago

    I strongly advise not to do that. As others pointed out, it really is just predicting the next word. It is worth learning about how to problem solve and to recognize that the only way to become a better program is with practice. It’s better to get programming advice from real people online and read the documentations for the functions and languages you are trying to use.

    • eerongal@ttrpg.network
      link
      fedilink
      arrow-up
      34
      ·
      1 year ago

      Notepad++ is perfectly fine to code in. With the wealth of plugins it has, it’s pretty similar to vscode in how you can trick it out with all sorts of things it can’t do by default.

      • Kogasa@programming.dev
        link
        fedilink
        arrow-up
        22
        arrow-down
        2
        ·
        1 year ago

        I’m a tolerant person, but come on, man. Between VSCode, JetBrains, (n)vim and emacs, and I can’t think of a legitimate reason to use np++ for development over any of them.

        • MikuNPC@lemm.ee
          link
          fedilink
          arrow-up
          11
          ·
          1 year ago

          It’s super fast in comparison to full IDEs and is easier to use than most editors. I switch between vscode and notepad++ depending on what im doing.

          • DudeDudenson@lemmings.world
            link
            fedilink
            arrow-up
            8
            ·
            1 year ago

            Macros man, being able to record a macro and use it quickly and easily is worth it’s weight in gold when you’re doing something super repetitive that there are no automatic refactors for.

            And i hate the “modern sleek design” culture of making all the options hidden and difficult to reach. Notepad s interface is so fucking clean and usefull.

            I still use intellij because of a lot of other things but quite often I find myself using notepad for specific tasks and it’s such a treat

        • GBU_28@lemm.ee
          link
          fedilink
          English
          arrow-up
          6
          ·
          1 year ago

          If you accept confusing and unsettling peers who watch you screen share and hammer out keybinds that do mysterious things, then you’re all set.

        • tiredofsametab@kbin.social
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          1 year ago

          I don’t use JetBrains because it’s not free, I mainly use VSCode since it is and works fine, but I would use np++ after that. I spent years working in np++.

          I played with linux in the early '90s, but mostly got started on GenToo Linux years ago and they had people installing Nano when building from the ground up. I grew to like that and never really learned VIM. I did use emacs every now and again, but all of those have lots of unwieldy key combinations that require memorization and don’t work like a lot of other programs people coming from, for instance, Windows would be at all familiar with. The barrier to entry was too high to bother with so it was wine and np++ since I was also still using Windows for work.

          I’ve been forced to use a Mac for work for the last almost-year and still can’t find anything as good as np++. BBCode is as close as I can get and I’m still not really a fan.

        • pirrrrrrrr@lemmy.dbzer0.com
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          The tiny, tiny footprint and speed to load.

          I would think I’d probably use an IDE if I was coding all the time.

          Heck, I’m only using it because JFE got too old.

          I do have VSCode set up even with the same scheme as NP++… but let’s face it, the most complex things I’m using are PowerShell and Node JS.

        • droans@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          I’ll use it for one-off short scripts. No point in doing the whole shebang for something that doesn’t need it.

  • Mr_Lobster@lemm.ee
    link
    fedilink
    English
    arrow-up
    23
    arrow-down
    1
    ·
    1 year ago

    I literally cannot comprehend coding with ChatGPT- How can I expect something to work if I don’t understand it, and how can I understand it if I don’t code and debug it myself? How can you expect to troubleshoot any issues afterwards if you don’t understand the code? I wouldn’t trust GPT for anything more complex than Hello World.

    • mild_deviation@programming.dev
      link
      fedilink
      arrow-up
      13
      arrow-down
      1
      ·
      1 year ago

      Just yesterday, I wrote a first version of a fairly complex method, then pasted it into GPT-4. It explained my code to me clearly, I was able to have a conversation with it about the code, and when I asked it to write a better version, that version ended up having a couple significant logical simplifications. (And a silly defect that I corrected it on.)

      The damn thing hallucinates sometimes (especially with more obscure/deep topics) and occasionally makes stupid mistakes, so it keeps you on your toes a bit, but it is nevertheless a very valuable tool.

      • philm@programming.dev
        link
        fedilink
        arrow-up
        8
        ·
        1 year ago

        That only really works, if the method is self-contained, and written in a language that GPT has seen often (such as python). I stopped using it, because for 1 in 10 successful tries I waste time for the other 9 tries…

    • worldsayshi@lemmy.world
      link
      fedilink
      arrow-up
      12
      arrow-down
      1
      ·
      edit-2
      1 year ago

      You shouldn’t use code that you don’t understand. Chatgpt outputs quite readable and understandable code and makes sure to explain a lot of it and you can ask questions about it.

      It can save quite a lot of effort, especially for tasks that are more tedious than hard. Even more if you have a general idea of what you want to do but you’re not familiar with the specific tools and libraries that you want to use for the task.

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

        It’s also wrong a lot. Hence the requirement for understanding. It can be helpful to get through a stretch but it will fuck up before too long and relying on it entirely is a bad idea.

    • Psythik@lemm.ee
      link
      fedilink
      arrow-up
      7
      arrow-down
      3
      ·
      1 year ago

      I haven’t been in web development in over 20 years; thanks to ChatGPT, I was able to get up-to-speed and start building websites again, when in the past I would have never been able to do so.

      GPT is a powerful tool that can allow anyone to do anything if they’re willing to put in the effort. We should be praising it, not making fun of it. It’s as revolutionary as the internet itself.

    • philm@programming.dev
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      This.

      If I’m writing something slightly more complex, ChatGPT(4) is mostly failing.

      If I’m writing complex code, I don’t even get the idea of using ChatGPT, because I’m only getting disappointed, and in the end waste more time trying to “engineer” the prompt, only to get disappointed again.

      I currently cannot imagine using ChatGPT for coding, I was excited in the beginning, and it’s sometimes useful, but mostly not really for coding…

      • worldsayshi@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        If you’re already knee deep in existing code and looking for bugs or need to write quite specific algorithms it seems not very useful. But if you for some reason need to write stuff that has the slightest feeling of boilerplate, like how do I interact with well established framework or service X while doing A, B C it can be really useful.

        • oldfart@lemm.ee
          link
          fedilink
          arrow-up
          2
          ·
          1 year ago

          Also it’s often doing a great job if you paste a stack trace into it and maybe some surrounding code. I used it to fix someone else’s Java code as well as to upgrade some 3rd party Wordpress junk to latest PHP. I barely know Java and stopped following PHP news around version 5.6.

    • 1984@lemmy.today
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      1 year ago

      Often the code is self explanitory. I understand the code very often, but I still couldn’t write it correctly from scratch. You never feel like that?

      This is how code examples in books works too. You get some code to look at and try to understand it. Otherwise it’s like you would ignore code examples while learning programming.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      1 year ago

      I use it to give me prototypes for ansible because Ansible is junk. Then I build my stuff from the mishmash and have GPT check it. Cuts a lot of time down that I’d rather be doing any-bloody-thing else with.

      • namingthingsiseasy@programming.dev
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        Basically, yeah. Dennis Ritchie wrote the C compiler because he knew exactly what her wanted to use it for and the kinds of code that he wanted to write. Then he went on to write the book that everyone used to learn the language.

        This is true of probably every language, library, framework, etc. The original designer writes it because he knows what he wants to do with it and does so. Then everyone else follows. People then add more features and provide demonstrations of how to use them, and others copy them. It is extremely hard to just look at an API and use that to figure out exactly which calls should be made and in what order. Everyone just reads from the examples and adapts them as needed.

  • Devouring@lemmy.world
    link
    fedilink
    arrow-up
    19
    ·
    1 year ago

    If you’re doing something extremely skillfully, chat gpt will make the dumbest suggestions ever…

    Chatgpt is good for learning ideas and new things as an aggregate of what everyone thinks about it. But as a coding tool it cannot reason properly and has rubber stamp solutions for everything.

    • DudeDudenson@lemmings.world
      link
      fedilink
      arrow-up
      9
      ·
      1 year ago

      Well yes it’s responses are based on what the average of the internet would say.

      I’m surprised it doesn’t constantly tell you to format windows and reinstall no matter what you ask

    • wizardbeard@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      20
      ·
      edit-2
      1 year ago

      I’ve got no issues with people using stackoverflow or chatGPT as a reference. The problem has always been when anyone just skims what they found and just paste it in without understanding it. Without looking at the rest of the comments, further discussion, or looking at any other search results for further insight and context.

      I think chatGPT makes this sort of “carelessness” (as opposed to carefulness) even easier to do, as it appears to be responding with an answer to your exact question and not just something the search algorithm thinks is related.

  • Semi-Hemi-Demigod@kbin.social
    link
    fedilink
    arrow-up
    15
    ·
    1 year ago

    In days of yore, before Google or even Altavista, you could tell the quality of a team by how many O’Reilly books they had on the shelves.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I should sell mine. Maybe I’ll keep the crab book and the white book, but the latter’s not even an O’Reilly.

  • PrettyFlyForAFatGuy@lemmy.ml
    link
    fedilink
    arrow-up
    10
    ·
    1 year ago

    I can code a feature faster than i can debug ChatGPTs attempt. so long as it’s in JS

    ChatGPT is better at bash than me though

  • smotherlove@sh.itjust.works
    link
    fedilink
    arrow-up
    12
    arrow-down
    3
    ·
    1 year ago

    I’ve always, always been a documentation-only guy. Meaning I almost never use anything other than the documentation for the languages and libraries I use. I genuinely don’t feel that I’m missing out on anything, I already write code faster than my peers and I don’t feel the need to try to be some sort of 10x developer.

    • alignedchaos@sh.itjust.works
      link
      fedilink
      arrow-up
      11
      ·
      1 year ago

      Sometimes there are better methods to implement something, and we can learn from others’ mistakes without having to make them ourselves

      • wizardbeard@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        4
        arrow-down
        1
        ·
        1 year ago

        How would chatgpt streamline that any better than other documentation and skimming things like programming blogs and stackoverflow?

        • emptiestplace@lemmy.ml
          link
          fedilink
          arrow-up
          4
          arrow-down
          5
          ·
          1 year ago

          It’s not as dumb as you are suggesting. I’ve been programming in various languages since the 80s and I can say with confidence that your take is, at best, absurd. Go spend some time with GPT 4.

          • smotherlove@sh.itjust.works
            link
            fedilink
            arrow-up
            9
            arrow-down
            2
            ·
            1 year ago

            I’m IP banned due to my VPN. If they don’t want my business, that’s fine. I’m not getting off my VPN just to interact with proprietary software.

    • canni@lemmy.one
      link
      fedilink
      arrow-up
      2
      arrow-down
      2
      ·
      1 year ago

      I’ve always, always been a intuition only guy. Meaning I almost never use any thing other than blind guessing on how languages and libraries work. I genuinely don’t feel I’m missing out on anything, my farts already smell better than the rest of my peers and I just don’t feel the need to learn the modern tools of my trade.

  • namingthingsiseasy@programming.dev
    link
    fedilink
    arrow-up
    9
    arrow-down
    1
    ·
    1 year ago

    Today we have chatbots. Yesterday we had search engines and stack overflow. Before that we had books. And before that? Well what do you know… software programming is a relatively novel field. It’s almost as if nobody has perfected how it should be learned.

    The most valuable knowledge comes from experience. I copied plenty of code around during my learning days as well, and I still do it today. The most important part however is trying to understand the code you’re working with. If you can understand it, know when it fails, test it in the right way, etc., then sure, you could probably learn to code from chatbots. They provide the information, and you’re at liberty to do what you want with it. If you just copy it and forget, you’ll be a bad programmer. But it’s not like you couldn’t do that before either with the other sources that were available - there were plenty of bad programmers before we had these tools available too.

    That said, there is a risk that these chatbots do not provide any useful context around the code that they produce. When you learned from a book or stack overflow, you were reading from a reasonably authoritative source that could explain the code that was produced. But the authority behind the code from chatbots is probably much weaker than what we have from stack overflow, which in turn was probably also weaker than what we have from books. Does it have an effect or learning? I have no clue. But I still think you can learn from chatbots if you use the output that they provide in the right way. (Disclaimer: I have never used one of them and have no experience with them.)

  • szczuroarturo@programming.dev
    link
    fedilink
    arrow-up
    8
    ·
    1 year ago

    I find it to be suprisingly usless compared to classic aproach. But in my case it might be beacuse of the language i work with ( abap ).

  • 9thSun@midwest.social
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    2
    ·
    1 year ago

    As someone who is learning, I think it’s imperative to understand that chatgpt has limitations that cannot be overlooked. It’s pretty good if I make some silly syntax or formatting errors, but at the core I have to understand what I’m working with if I want to be a better programmer. I love the conversational nature because I often have a hard time wording questions, so it helps me in that regard as well. Idk if you want to be truly good at something you have to be more reliant on yourself than external tools.

    • 1984@lemmy.today
      link
      fedilink
      arrow-up
      4
      arrow-down
      2
      ·
      edit-2
      1 year ago

      The thing is, in some fields like devops, there are so many tools that you can’t remember or know all of them very well. So asking chatgpt how to do something saves very much time. It can write ansible playbooks, docker files, web server configurations etc etc. They almost never work perfectly but they give a very good starting point to modify.

      It used to be that you could be very good at specific languages or tools but today, there isn’t enough time. Everyone is always in a hurry to get something out as quickly as possible too.