back to article Gentoo Linux tells AI-generated code contributions to fork off

AI-generated and assisted code contributions are no longer allowed in the Gentoo Linux distribution. A ban on AI-made code was originally proposed on February 27 by Michał Górny, a member of Gentoo's council, an elected committee that governs the Linux distro. Górny argued for an AI ban for three major reasons: potential …

  1. Anonymous Coward
    Anonymous Coward

    "I feel that many Gentoo users really appreciate the old school approach to software engineering where humans matter more than 'productivity.'"

    I'm not sure what they've swallowed but I think most people are more interested bug-free code regardless of how it came about.

    1. Blackjack Silver badge

      AI won't get you bug-free code without several humans going over the code the AI wrote.

      These guys were doing summits of AI made crao without doing quality control.

      1. NoneSuch Silver badge
        WTF?

        AI won't get you bug-free code without several humans going over the code

        You can't get bug-free code that way either. Humans are just as unreliable sometimes.

    2. Anonymous Coward
      Anonymous Coward

      The best way to achieve bug-free code is to ban AI LLMs from creating code in your project.

      First of all, writing code is considerably easier than reviewing code. With LLMs you can hope to automate the easy bit while making the hard bit harder because there is nobody to ask why they chose to do X two months ago. Also, there will be either zero documentation, unintelligible documentation, or plain wrong documentation.

      Secondly, LLMs are currently pretty poor at writing code. LLMs have no intelligence, they just rehash what they have found elsewhere. Their proposed code is therefore full of ancient code styles that have long fallen out of favour, full of approaches that were thought to be safe fifteen years ago but have long since been replaced by better practices, or approaches that have never been safe but just worked (as in: passed a functionality test) in a time when security was an afterthought.

      And that's just the coding. At the moment Open Source projects (and probably closed source projects too but they won't tell us) are bombarded with ChatGPT gibberish masquerading as bug reports because people want to achieve kudos, or get a bug bounty. Just spray and pray GPT diarrhoea at dev teams and see what sticks. At the moment LLMs are hard at work making software quality worse.

      I'm not saying LLMs (or even AI at some point) can never play a role in serious quality software development (I can see how it could theoretically work but the snake oil salesmen have no incentive to focus on quality) but I suspect that is a good few years off. If it ever happens.

      1. Grogan Silver badge

        One part of me thought "Now that's pretty closed minded of them" but I think it's a good decision at this time to disallow such nonsense. It's best to just say an unconditional no, for now, and think about it again at some pie in the sky future date.

  2. mark l 2 Silver badge

    "Górny argued for an AI ban for three major reasons: potential copyright infringement, quality control issues, and ethical considerations over AI's high power consumption and the role of major corporations in shaping the technology."

    Surely if power consumption were really a huge issue for the Gentoo team they would also look at how their distro operates? As running a system with Gentoo means your using more power to install and update a Gentoo system over something like RHEL or Ubuntu. Since with Gentoo you have to compile most apps yourself from source which means your CPU load is higher, the system draws more power and needs to be running for longer than if you were just downloading a precompiled binary.

    FYI i do have a system that runs Gentoo at home, which acts as a freeview DVR, so i know how long an update can take to do.

    1. This post has been deleted by its author

    2. Effigy

      "a huge issue", well as stated it's one of several issues that taken together prompted the ban. There's no equivalence, since the Gentoo user base isn't prompting large capital to build new data centers every week.

    3. MyffyW Silver badge

      If the compile is an appreciable part of the overall energy consumption for the lifetime of the PC - sure, you have a point.

      Question: Is it?

    4. tinpinion
      Linux

      While I don't believe it's been done for anything more than convenience, Gentoo recently began offering prebuilt binaries for quite a few amd64 and arm64 packages!

      https://www.theregister.com/2024/01/03/gentoo_starts_offering_binaries/

      https://www.gentoo.org/news/2023/12/29/Gentoo-binary.html

    5. Grogan Silver badge

      I'd agree, it's not about power, that's just piling on reasons. I was a bit washy about being closed minded, but I think they made the right decision at this time.

      I compile my own software no matter what I'm using, I like to optimize and often don't like the way the distributor has compiled it. I care less for Gentoo, because I don't like to behave. For example it's easy to wind up with a bunch of circular dependencies in Ebuilds when you don't do everything their way. I prefer Arch for that, I build my own packages (not every silly dependency, there are thousands of packages including lib32 poo I need for gaming, but stuff that matters from the ground up) and use ignore directives so pacman won't replace my packages. I'm free to build my packages however I want using the PKGBUILD scripts and I can write in any dependency tracking info I want, as well as "provides" and "conflicts with" lines for things I choose to build monolithically instead of split packages. I've also got stuff I maintain myself in /usr/local and /opt. As long as what I do gibes, it doesn't break package management like I would in mainstream distros.

      Otherwise, Gentoo is fun. I'd rather do a custom LFS than that though (which I also have for mostly non-gaming use).

      A lot of distros like to spin their wheels. Others like to spin other people's wheels. Everybody thinks they are clever, and find new ways to re-invent the flat tire.

    6. Blackjack Silver badge

      You can't honesty compare "AI crap wastes as much power or more that crypto mining" to this distro raised my power bull a few dollars.

  3. Pete 2 Silver badge

    Banned wagon?

    > In Górny's view, the effectiveness of the ban isn't really the point.

    So basically it's just PR.

  4. Mike007 Bronze badge

    I have used ChatGPT to generate example snippets of how to do a specific thing, but I have been completely unable to get it to produce even a relatively basic program that is functional...

    Closest I got was after an hour or so trying to get it to produce a web page for managing user accounts where it managed to get a list of users in the database and a button to add a new user, with their password stored in plain text of course. (I specifically told it not to do this, and it still kept doing it)

    1. DJV Silver badge

      "I have used ChatGPT to generate example snippets of how to do a specific thing, but I have been completely unable to get it to produce even a relatively basic program that is functional"

      Back in the 1990s when I was doing a computing degree at university, someone assigned to our first-year group project also produced code like that. A quick glance at his attempts at coding would reveal several compiler-breaking syntax errors. "Did this compile?" I'd ask, knowing full well that it couldn't have. "Yes," he would lie.

    2. ShortCircuit

      I pretty much use ChatGPT like a giant search engine to find answers without having to spend hours and hours digging on the internet. When trying to get it to create complete content, I always run into the same thing you mentioned - I give it specific directives on how something must be done, and it completely disregards them.

      If you know how to work with them, LLMs can be a tool to help figure out how to do something, but at this point, they're not going to do it for you and if they do it's not going to be good quality, if it works at all.

  5. Steve Davies 3 Silver badge

    Use of LLM's

    I'd never allow a LLM to generate code. The reasons why have been mentioned by other commentards. However, I see a role for a LLM in reviewing code for things like adherence to coding standards, variable naming and the like.

    A more complicated use would be to verify that standards in error handling had been followed. How many times to developers re-invent the wheel (if they actually include it in the first place)?

    Things will evolve but writing code for production? Not until they are sentient beings and can explain their decisions to us humans in language that we can understand.

  6. Snowy Silver badge
    Holmes

    What is the difference

    How can you tell AI code from bad human code, or even good human code?

    1. Gordon 10

      Re: What is the difference

      15 replies in before someone points out the bleeding obvious.

      Code is text it's virtually impossible to reliably detect provenance.

      1. picturethis
        Coat

        Re: What is the difference

        Maybe we need to have the ability to write code using an individual's cursive handwriting :) Then AI could be used to establish the provenance of the code... I can (and do) read/write in cursive, not so sure too many of younger generations can. Although I am led to believe that this may be changing.

    2. Anonymous Coward
      Anonymous Coward

      Re: What is the difference

      Because AI tends to make mistakes that even toddlers don't make? Look at how awful ChatGPT is at creating normal flowing sentences that are even slightly to the point. It's evident that it has been trained on a lot of poorly written fan fiction that uses too many words to say something simple and is riddled with superfluous adjectives. Prose is quite flexible and forgiving. Code is more structured and fairly strict (try forgetting a single semicolon in some languages) so mistakes often jump out.

      1. Snowy Silver badge
        Coat

        Re: What is the difference

        If the code it is trained on is good then the code it outputs should be good, unlike "poorly written fan fiction" it was trained on to prose. In which case it is not going to be easy to figure out the AI from human code, unless the code does not work?

        1. Alan Brown Silver badge

          Re: What is the difference

          "IF"

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like