New development policy: code generated by a large language model or similar technology (e.g. ChatGPT, GitHub Copilot) is presumed to be tainted (i.e. of unclear copyright, not fitting NetBSD’s licensing goals) and cannot be committed to NetBSD.

https://www.NetBSD.org/developers/commit-guidelines.html

  • @omgitsaheadcrab
    link
    English
    951 month ago

    Ok but how is anyone meant to know if you generated your docstrings using copilot?

    • @[email protected]
      link
      fedilink
      English
      1131 month ago

      How do they know that you wrote it yourself and didn’t just steal it?

      This is a rule to protect themselves. If there is ever a case around this, they can push the blame to the person that committed the code for breaking that rule.

      • Destide
        link
        fedilink
        English
        351 month ago

        This is the only reason rules exist, not to stop people doing a thing but to be able to enforce or defect responsibility when they do.

        • @[email protected]
          link
          fedilink
          English
          81 month ago

          I mean, generally rules at least are to strongly discourage people from doing a thing, or to lead to things that WOULD prevent people from doing a thing.

          A purely conceptual rule by itself would not magically stop someone from doing a thing, but that’s kind of a weird way to think about it.

    • Zos_Kia
      link
      fedilink
      English
      251 month ago

      I’m saddened to use this phrase but it is literally virtue signalling. They have no way of knowing lmao

      • @best_username_ever
        link
        English
        111 month ago

        It’s actually simple to detect: if the code sucks or is written by a bad programmer, and the docstrings are perfect, it’s AI. I’ve seen this more than once and it never fails.

        • Zos_Kia
          link
          fedilink
          English
          41 month ago

          I’m confused, do people really use copilot to write the whole thing and ship it without re reading?

          • @sugar_in_your_tea
            link
            English
            71 month ago

            I literally did an interview that went like this:

            1. Applicant used copilot to generate nontrivial amounts of the code
            2. Copilot generated the wrong code for a key part of the algorithm; applicant didn’t notice
            3. We pointed it out, they fixed it
            4. They had to refactor the code a bit, and ended up making the same exact mistake again
            5. We pointed out the error again…

            And that’s in an interview, where you should be extra careful to make a good impression…

          • @[email protected]
            link
            fedilink
            English
            31 month ago

            Not specific to AI but someone flat out told me they didn’t even run the code to see it work. They didn’t understand why I would or expect that before accepting code. This was someone submitting code to a widely deployed open source project.

            So, I would expect the answer is yes or very soon to be yes.

          • @best_username_ever
            link
            English
            1
            edit-2
            1 month ago

            Around me, most beginners who use that don’t have the skills to understand or even test what they get. They don’t want to learn I guess, ChatGPT is easier.

            I recently suspected a new guy was using ChatGPT because everything seemed perfect (grammar, code formatting, classes made with design patterns, etc.) but the code was very wrong. So I did some pair programming with him and asked if we could debug his simple application. He didn’t know where the debug button was.

            • Zos_Kia
              link
              fedilink
              English
              21 month ago

              Guilty as charged, ten years into the job and I never learned to use a debugger lol.

              Seriously though that’s amazing to me I never met one of those… I guess 95% of them will churn out of the industry in less than five years…

              • @[email protected]
                link
                fedilink
                English
                1
                edit-2
                1 month ago

                Debug button? There is a button that inserts ‘printf(“%s:%s boop! \n” , __FUNCTION__, __LINE__) ;’?

        • TimeSquirrel
          link
          fedilink
          1
          edit-2
          1 month ago

          So your results are biased, because you’re not going to see the decent programmers who are just using it to take mundane tasks off their back (like generating boilerplate functions) while staying in control of the logic. You’re only ever going to catch the noobs trying to cheat without fully understanding what it is they’re doing.

          • @best_username_ever
            link
            English
            81 month ago

            You’re only ever going to catch the noobs.

            That’s the fucking point. Juniors must learn, not copy paste random stuff. I don’t care what seniors do.

      • Venator
        link
        fedilink
        91 month ago

        It’s also probably to make things slightly simpler from a legal perspective.

    • ceasarlegsvin
      link
      fedilink
      71 month ago

      Because they’ll be shit?

      Docstrings based on the method signature and literal contents of a method or class are completely pointless, and that’s all copilot can do. It can’t Intuit anything that docstrings are actually there for.

      • Zos_Kia
        link
        fedilink
        English
        31 month ago

        Definitely not my experience. With a well structured code base it can be pretty uncanny. I think it’s context is limited to files that are currently opened in the editor, so that may be your issue if you’re coding with just one file open?

        • TimeSquirrel
          link
          fedilink
          4
          edit-2
          1 month ago

          GitHub Copilot introduced a new keyword a little while ago, “@workspace”, where it can see everything in your project. The code it generates uses all your own functions and variables in your libraries and it figures out how to use them correctly.

          There was one time where I totally went “WTF”, because it spat out Python. In a C++ project. But those kind of hallucinations are getting more and more rare. The more code you write, the better it gets. It really does become sort of like a “Copilot”, sitting there coding alongside you. The mistake people make is assuming it’s going to come up with ideas and algorithms for them without spending any mental energy at all.

          I’m not trying to shill. I’m not a programmer by trade. Just a hobbyist who started on QBasic in the ancient times. But I’ve been trying to learn it off and on for the past 30 years, and I’ve never learned so much and had so much fun as in the last 1.5 with AI help. I can just think of stuff to do, and shit will just flow out now.