Can You “Take Back” Open Source Code?

It seems a simple enough concept for anyone who’s spent some time hacking on open source code: once you release something as open source, it’s open for good. Sure the developer might decide that future versions of the project close up the source, it’s been known to happen occasionally, but what’s already out there publicly can never be recalled. The Internet doesn’t have a “Delete” button, and once you’ve published your source code and let potentially millions of people download it, there’s no putting the Genie back in the bottle.

But what happens if there are extenuating circumstances? What if the project turns into something you no longer want to be a part of? Perhaps you submitted your code to a project with a specific understanding of how it was to be used, and then the rules changed. Or maybe you’ve been personally banned from a project, and yet the maintainers of said project have no problem letting your sizable code contributions stick around even after you’ve been kicked to the curb?

Due to what some perceive as a forced change in the Linux Code of Conduct, these are the questions being asked by some of the developers of the world’s preeminent open source project. It’s a situation which the open source community has rarely had to deal with, and certainly never on a project of this magnitude.

Is it truly possible to “take back” source code submitted to a project that’s released under a free and open source license such as the GPL? If so, what are the ramifications? What happens if it’s determined that the literally billions of devices running the Linux kernel are doing so in violation of a single developer’s copyright? These questions are of grave importance to the Internet and arguably our way of life. But the answers aren’t as easy to come by as you might think.

Copyleft and Ownership

The GPL is what’s known as a copyleft license, which is designed to add additional rights for the end users which would otherwise be limited by copyright laws. For example, it gives the user the right to duplicate and create derivative works. But an important distinction is that copyleft licences such as the GPL don’t actually replace the original copyright, they are merely supplemental. The original author of the code still holds the copyright, and is ultimately its sole owner.

This allows for the concept of dual licensing: wherein the sole author of a program can chose to license a program under multiple licenses at the same time, one of which generally being more permissive than the other. For example, the Windows version of a program could be closed source, while the Linux version is open source; even if the actual code is identical. More often, this is used to provide one license that applies for commercial use of a program, and more permissive licensing for individuals.

Some open source projects, generally large ones with corporate backing, occasionally have what’s known as a Contributor License Agreement. This document explains any additional requirements and rules for submitting source code to a project, and will usually have a clause explaining that the submitter is granting their copyright to the project’s parent entity. For example, here is the relevant section from Google’s “Individual Contributor License Agreement”:

Subject to the terms and conditions of this Agreement, You hereby grant to Google and to recipients of software distributed by Google a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works.

It’s worth noting that Linux does not utilize such an agreement, and the copyright for any submitted source code therefore remains the property of the original developer.

Reputational Losses

So if a developer is free to license their code in diametrically opposed ways (simultaneously closed and open source), and it’s acknowledged that in the absence of a Contributor License Agreement they retain the uncontested ownership of any code they write, the situation becomes tricky. Does it not follow that they have the right to walk back a promise to make their source code open, if a scenario presents itself in which the author feels it’s no longer appropriate?

Eric S. Raymond

Eric S. Raymond, one of the founders of the Open Source Initiative and author of The Cathedral and the Bazaar believes they may have that right. In a post to the Linux Kernel Mailing list, Eric specifically addresses the threat some developers have made about attempting to pull their code from the kernel:

First, let me confirm that this threat has teeth. I researched the relevant law when I was founding the Open Source Initiative. In the U.S. there is case law confirming that reputational losses relating to conversion of the rights of a contributor to a GPLed project are judicable in law. I do not know the case law outside the U.S., but in countries observing the Berne Convention without the U.S.’s opt-out of the “moral rights” clause, that clause probably gives the objectors an even stronger case.

Section 6 of the Berne Convention explains that the original author of a work, even if they have granted their rights to another entity, can object to its further use if they feel it has been utilized in a way which “would be prejudicial to his honor or reputation.” So in theory a disgruntled developer need only convince a judge that the maintainers of a project have damaged their reputation, say by publicly banning them for violating the Code of Conduct, and have a case for forcing the project to stop using their code regardless of preexisting licensing agreements.

Critical Language

But the question remains, can a developer actually “revoke” the rights given under the GPL? If we’re talking about the GPLv2 (which Linux is licensed under), the closest thing we find is Section 4:

However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

Interestingly, if we take a look at the GPLv3, we see relevant language was made much stronger:

All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met.

Some believe the distinction here may prove to be critical. In a legal context, it’s generally understood that “revoke” means an agreement was retracted by the entity offering it (here, the original developer), while “terminate” simply means to end an agreement. This leaves room for interpretation, and one could potentially argue that since the GPLv2 does not specifically state the developer can’t retract the offer, it remains an option.

Here Be Dragons

Between the Eric S. Raymond’s assertion that a developer could claim divisive elements within the project are damaging to their reputation and the fact that the current licensing arrangement of Linux means there’s no specific language saying developers can’t withdraw their submissions, the situation becomes murky. The truth is, nobody is really sure yet. We’re in uncharted waters, and old assumptions may not hold up to legal scrutiny if it comes to it.

It’s also worth mentioning that the concept of “Promissory Estoppel” could come into play; which essentially prevents an individual from going back on a promise if the other party took action based on that promise. In other words, if you told somebody they could use your code and they used it to produce a successful project, you can’t then go back on that promise because it would be to their detriment.

Practically speaking, even if an individual built a case saying they wanted their chunk of code removed from Linux, it would be physically impossible. In lieu of being able to delete their code from the now-copyright-infringing devices, said developer would likely receive some monetary settlement. Which would still be a terrible precedent to set for the open source community: get mad, get paid.

At the end of the day, talk of revoking open source licenses is misguided. To paraphrase the character of Ian Malcolm from Jurassic Park: angry developers are so preoccupied with whether or not they could, they haven’t stopped to think if they should. If legal precedent is set that a developer can take their source code back, it will be ruinous to the open source community. Its taken decades for free and open source software to rise to its current prominence in the software world, but the rash actions of a few unhappy developers could be enough to drag it back down to being little more than a wishful idea.

151 thoughts on “Can You “Take Back” Open Source Code?

  1. “which essentially prevents an individual from going back on a promise if the other party took action based on that promise” … that would also prevent the changing of that code of conduct since the new version is too much different from the original one and be to the detriment of the party affected.

    As I see it, most developers are not desiring that much to remove their contributions, but most people are really opposed to the change in the rules of participation and the whole mistreatment of members due to things not related to their programming contributions.

    If necessary, it may be useful to people really try ( and be able to ) remove their contributions, to help define some points of the open source situation that were never considered before.

    1. “… that would also prevent the changing of that code of conduct …”

      Does it? You don’t have to be in the kernel development group to enjoy the use of kernel code. Kicking them out of the group isn’t really taking their code away from them. A person who cannot contribute to Linux can still use Linux. They can even fork Linux, compete against it and try to attract their own developers to their own new group.

      Even if the new CoC is abused to the worst extent of what people fear* I would argue that a group should have the right to set (and change) their own rules. Let them shoot themselves in the foot (if that’s what they are up to). It’s ok, some combination of old and new developers will fork a new project from the ashes and only those people that caused the problem will be left with nothing of value.

      * – Which remains to be seen but the dig on Theodore Tso is not a good sign (regardless of what you think of him and his views Sage Sharp’s tweets were was not an appropriate move and the Linux kernel development group is NOT the appropriate forum for such debates)

      1. “If piracy has imparted one lesson is that copyright, or not, once it’s out there, control becomes a figment of one’s imagination.”

        Uh, yes and no. Certainly, it’s impossible to put the genie back in the bottle. You lose all effective control. But you do not lose legal control. When it comes to a movie pirate, it’s simply impossible to use legal means to control individual pirates. Similarly, regardless of legal status, it would be impossible to control who’s using your code in a Linux kernel running on their home computer. But it’s much more feasible to sue a company that releases a product which runs a Linux kernel. The easiest example is Android phones. You could demand that Samsung and every other producer of Android phones stop using your code or pay you for the privilege of doing so. If they refuse, you can sue the hell out of them.

        1. Well as “Tivoization”, “web services loophole” and DRM, (and lets not get into patents as a backdoor, thanks Oracle!), have demonstrated technology will usually keep ahead of legal as a defense. Hence majority of open source being under a speedily revised “Oops!” license (GPLv2 vs 3).

          1. While I agree that GPLv2 is a “Oops!” or beta license, it was hardly “speedily” revised, came out in 1991, wasn’t fixed until 2007. It definitely presents a unique problem, the best we can do individually is to make sure we use always use the v3 version from now on and encourage our friends to do the same.

      2. It’s not just piracy, it’s just how ideas work. The concept of intellectual property as we know it today is actually very young and kind of silly. It’s become highly tuned to favor corporate rights over every other principle, as have most aspects of our culture.

        If libraries were invented tomorrow, we’d call them pirates. Pretending like IP protects hardworking creators, inventors and such is only a PR-friendly excuse. It protects the profits of those who have far more than enough and holds back human progress.

        1. “If libraries were invented tomorrow, we’d call them pirates.” lol this is so true. I’ve never thought of this example, but it really does put copyright laws in perspective.

          1. Why would we do that when libraries pay for their content like everyone else. Piracy, by it’s very definition is the act of NOT paying for content. The OTHER argument tried was libraries effect on sales, but that’s not piracy.

  2. “It’s worth noting that Linux does not utilize [a Contributor License Agreement], and the copyright for any submitted source code therefore remains the property of the original developer.”

    Seems like this is likely to change in lieu of the pending threat that someone could damage the project because they feel wronged.

    1. That seems very likely. The Linux dev culture has always been very relaxed (which is why the new CoC came as such as a shock to many), so they felt like they didn’t need a CLA before. But seems those days may be numbered.

  3. Even if the terms of the license are changed at version x.0, any person – so long as they maintain the terms of the original license – is free to fork the FOSS project at version x.0 and continue it’s free and open development; even if the original stake holders make the license more restrictive for the trunk.

    Once you release code into the wild as FOSS, you are not free to take your toys and go home. It’s not ‘your’ code anymore. Only the attribution is yours. They copyright is just there to grant you the ability to dual release under less restrictive terms (usually for a fee). It’s even more complicated as soon as the second contributor adds just one line to the project without a CLA. Then the question of who ‘owns’ it gets more and more cloudy with the mix of authorship.

    This may be a delightful legal ponderance. But it will never see a significant legal judgement.

      1. “at least in some jurisictions”

        Now apply that universally. If copyright allowed retroactively revoking the license, Microsoft would have done this LONG ago.
        When they started their big push on forcing Windows 10, imagine if it really was legal for them to revoke your license to ALL past Microsoft products you paid for.

        A license is a license, so it’s all the same thing. If this was legal, it would have been done by now.

        With the current US copyright law, that means after just 8-10 reboots of your not-windows-10 and not-cloud-office software, penalties would be in the millions of dollars ($150k per boot, as each boot would be an unauthorized copy into ram)

        1. MS didnt have to offer a free upgrade to Windows 10. However fighting piracy at home is a loosing battle. MS lets people use their products in their everyday lives so that those same people will demand familiar MS products at the work place. And thats where they reap their profits. Its why they give schools free licences.

    1. I haven’t read the latest version of the GPL, but if it follows the spirit of earlier versions, then you can’t even continue development of something you’ve declared FOSS, under a more restrictive license. That is, if you wrote version 1.0, and don’t like what people have done with it, you can’t even fork it to 2.0 without keeping it FOSS. That is, there is no provision in the GPL that allows even the original copyright owner to de-FOSS it.

      1. You’re simply wrong – because you are looking in a license, not in copyright law.

        The original author of course retains the right to offer their own work, past or future, under a different license.

        However, they do not have the right to offer work which includes the GPL contributions of others under a non-GPL license, unless they secure either permission of those others or assignment of the ownership of those contributions.

      2. There doesn’t have to be such a provision in the GPL. The original copyright holder still owns the copyright to the code even if they release it under the GPL, which means it’s them, not the FSF, who decides whether or not they can release the next version under a proprietary license. Owning the copyright means you have all the rights to do whatever you want with the program, even things like release the exact same program under both the GPL and a proprietary license.

        1. But are they allowed to sue people after they’ve promised them permission? The problem with splitting hairs is you have to split all of them.

          If they withdraw their permission to use the copyright, does that automatically mean they’re guaranteed to have a cause of action? Or are there cases that are unenforceable?

          If they withdraw permission, they can probably demand that their name be removed. That much is clear from ESR’s argument. But it doesn’t mean they can get in the way of the project.

  4. I think there is a flaw in the wording here. Maybe it’s pedantic but isn’t that what law is all about?

    The article uses the word promise a lot in ways that I think implies the promise is to do something in the future. It’s kind of like saying “At lunch time I promise to take you out and buy you a burger”. You haven’t actually done anything yet. When code has already had the license attached, been uploaded to the repository and maybe even been distributed out to a billion random devices scattered around the world this is a different thing. It’s not a promise to do something, it’s something that has already been done. The equivalent would be like saying “You know that burger I bought you for lunch last week… yah.. I’m going to need that back now”. Obvioously it doesn’t work.

    Also, imagine if things did work that way. GPLV2 code (and any other oss with no “no takebacks” clause) would be absolutely worthless. Who would accept code from anyone if there was a risk that they might be required to pull it out years later when countless other bits of code have been written to depend on it? I wouldn’t touch that stuff with a 10 foot pole!

    1. I find your burger analogy flawed because as soon as it is consumed it isn’t possible to get it back.

      Much more apropos would be a tool, given with the understanding that you won’t use it for bad things. (I say bad things intentionally because the definition is open to individual interpretation.)

      Fast forward to the current dispute, the origional giver feels that the receiver is going to use the tool for “bad things” that they don’t agree with. Whereas receiver feels that they are only being morally responsible.

      Hence the legal quandry, does the giver have the legal right to demand that the receiver stop using his tool? Mr. Raymond says yes.

      My personal feeling is that a very vocal minority are trying to impose their views on everyone, and that if they feel that Linux and Linus are so toxic, they should make their own fork and run it however they want. If it really is better than devs will jump over to the new fork. Hell, put Pottering in charge, he’s certainly a pariah that would jump at the chance to be king.

  5. In my understanding it’s not necessary to sign off your copyrights permanently anyways. There’s a termination period of any grant or transfer of copyright 35 years from the date of execution where the original author can do takebaksies during the next five years if they choose to.

    “Upon the effective date of termination, all rights under this title that were covered by the terminated grants revert to the author, authors, and other persons owning termination interests under clauses (1) and (2) of subsection (a), including those owners who did not join in signing the notice of termination under clause (4) of subsection (a), but with the following limitations:”

    “(1) A derivative work prepared under authority of the grant before its termination may continue to be utilized under the terms of the grant after its termination, but this privilege does not extend to the preparation after the termination of other derivative works based upon the copyrighted work covered by the terminated grant.”

    – U.S. Copyright Law

    Basically, if the code you contributed is older than 35 years, you can’t prohibit the use of said code in products such as the Linux kernel, but you can prohibit anyone from using the code for further development. Effectively, they have to keep it as it is, or stop using it.

    1. I am not a lawyer but I don’t think this applies. This is concerning terminating “… grant or transfer of copyright …” It’s not concerning a licensing of copyright. When you grant or transfer your copyright, you’re giving control of it to another party. Bands do this with record labels as part of their contract all the time. The band no longer owns the copyright and in fact bands have been sued for pirating their own songs. That doesn’t happen with the GPL. When you license something under the GPL, you grant others a license to use it but you retain the copyright yourself. You can turn around and license the exact same code to someone else to use in a closed source product and no one can stop you. You can’t terminate the grant or transfer of copyright with the GPL because copyright was never granted or transferred to another party.

    1. the clickbate headline, the SJW types are trying to hijack the Linux kernel with a code of conduct that lets them kick out anyone that doesn’t tow the party line, the nerds are telling them that if it comes to a fight they have the weapon to burn the house down

      1. TOE the line. As in everyone line up with your toes on this line. Not behind it, not over it, ON it. An example, new military recruits lining up during induction, as an early step in following orders to get them to obey and work in lock-step. Don’t toe the line and you’ll get punishment.

    2. People are angry that they don’t get to call their fellow contributors “slime-sucking fucks” and other such things on the mailing list and continue to harass them afterwards because they don’t agree with you.

  6. If anything of this is true it may be the death of open source software. At least in countries where “law” is upheld or broken by arbitrary jury votes and behind the counter deals.
    If an (ex) developer does not want to be associated with a certain open source project anymore I do grant him the right to request to have his name removed from the credits / copyright section of said project.

    1. Noone gives a f***. All we care about is his code, we’re not inviting him to give a speech. Just like I was never interested in hearing what all those LGBT+ SJW people are doing in the bedroom. If they can deliver something useful, they can be a homophobic pansexual Apache Helicopter from the planet Blorgon-9 for all I care, and even then I wouldn’t be interested in who they are.

      Anonymizing people’s names on the kernel mailing list would probably be the most efficient way to fix any bias problems, but SJW’s are never interested in stuff that actually works. Because they would still have to produce good code to get an merits, which they obviously can’t.

      1. So the “LGBT+ SJW people” are forcing you to listen to what they do in their bedrooms?
        While you may not realize it things like this tells much of you as a person, as if your flippant irrelevant remarks wouldn’t do that by themselves.

        ESR perhaps doesn’t force you to listen but isn’t shy of talking about his views. Do you really want to compare that with your stereotypical “LGBT+ SJW people”? Obviously you do, but then you are an idiot.

        1. Literally nobody gives a shit what you want to do in your own bedroom – or to who – as long as it is at or above the age of consent. What I care about is you forcing that nonsense into literally *every* aspect of your existence as though it defines you. Not everything has to be about what you identify as. Nobody cares. If you can’t find value in your own merit, maybe you have none. If you want to marginalize yourself and act like a number, suit yourself. Just do it on your own time. Diversity is great, so long as it isn’t diversity of thought, right?

  7. Torvalds @ BBC interview:: https://www.bbc.co.uk/news/technology-45664640

    Excerpts:

    “So that’s my excuse for dismissing a lot of the politically correct concerns for years. I felt it wasn’t worth it. Anybody who uses the words ‘white cis male privilege’ was simply not worth my time even talking to, I felt.

    “Because I may have my reservations about excessive political correctness, but honestly, I absolutely do not want to be seen as being in the same camp as the low-life scum on the internet that think it’s OK to be a white nationalist Nazi, and have some truly nasty misogynistic, homophobic or transphobic behaviour. And those people were complaining about too much political correctness too, and in the process just making my public stance look bad.

    “So in the end, my ‘I really don’t want to be too PC’ stance simply became untenable.
    …. also because I don’t want to be associated with a lot of the people who complain about excessive political correctness.

    I’m appalled that anyone, ANYONE, feels so pushed so far by SJW’s and the current movements reflected upon above that they would suggest they need to take a backseat because they are afriad of being categorised as a Nazi.
    Objecting to people with an agenda you disagree with on their personal beliefs and their choices, does not a nazi make you. Even when they are shouting at you “you are a nazi”. It doesn’t make them right. Nor is it right to accept their forced narrative and view that the world needs to change because their special snowflake feels like it.

    Wake the fuck up.
    These are the warning signs of facism at work.

    1. Linus’ daughter is part of the SJW crowd, she even signed the commit introducing the new CoC. Also there are strong signs that Torvalds didn’t write his apology by himself (there’s a funny mix of different Unicode punctuation characters he’s never used before, but are standard in e.g. Microsoft products, indicating that the apology was copied together from multiple sources). Someone pays his salary, the Linux Foundation is almost eyclusively made up by huge companies, they don’t want any drama and are often already infected with SJW as well.

      They got him where it hurts the most. At home and in the paycheck.

      1. Do you really think that Linus needs the company that pays his paycheck? As maintainer of Linux and creator of Git you don’t have a need to search a job. The jobs are searching you.
        And let me say, I’m a really really small light in the developer sky…but there are so few good programmers out there that the jobs are searching me too.

    2. Sounds more like he appalled by the behavior of some people online and wants to distance himself from them.
      I’m confused by your attempt to blame “SJWs” for the man not wanting to be associated with bad actors online; As if those pointing out bad behavior are to blame. Especially since he is so dismissive of that crowd throughout the interview.
      Honestly this seems like a pretty minor concession to a changing world. In the 90s you could still slightly be misanthropic and grumpy if you could make up for it with strong technical skills; now we require some degree of people skills from everyone. Personally I feel this is an improvement in the long run in terms of improved communication leading to more efficiency, not to mention a more inviting work environment leading to more people joining the field; but you’re free to disagree with that.

      1. As I said below it’s a slippery slope.
        Not wanting to be seen as a nazi, well I’m sorry but the SJW movement says you are eitehr with us, or you are a nazi.
        There is no central ground. We are not allowed to disagree with their movement without being called a nazi or “white cis male” privilege.
        The so called minority is actively opressing the views of the majority.
        This majority wants to stay silent becasue they wish to keep their jobs under the pressure of saying something innocently that someone jumps on, becomes victim hurt and then gos nuts on social media against the company so that person gets terminated.
        It’s happening daily.

          1. Hmm, so 1980’s South Africa didn’t exist? Or it’s only racism if it’s done in USA? :D

            (Poe’s law applies)
            Although recent news on that country seems to be… yeah.

    3. My problem with this all is “white nationalist Nazi” is a label that the SJW’s apply without any actual thought. Jewish homosexuals are labeled “white nationalist Nazi’s” ffs. The most fascist people I’ve seen have been the ‘anti-fascists’. The most oppressive people I’ve seen are those complaining the most about oppression (and let me tell you, for oppressed people they sure are allowed to talk a lot).

      I don’t care about your political affiliation, I don’t even honestly care about your issues. I just write code and try to enjoy the occasional movie.

    4. Maybe come back to reality for a moment:
      a code of conduct is not fascism, it just means you can’t be an asshole on the kernel documentation no more, just like you can’t in a workplace, just like you can’t at the library, just like you can’t when you attend a conference.

      1. It’s a slippery slope. It’s not a case of not being an asshole either, it’s being forced to agree and accept ever more PC attitudes because a group of people say they are special and victims.
        It’s adding no value and in the corporate world is directly in the way of the actual work at hand.

      2. Unfortunately, that’s not the case. The CoC says that you can’t be an asshole down the mall either, and if someone knows you are an asshole at the mall, then if they don’t punish you for that, then they are an asshole too. And no assholes are allowed to write kernel documentation.

        The worst offender in this regard (being an asshole) appears to be the solo originator of the CoC itself, which speaks volumes.

      3. That is a clear as glass false statement. the COC goes much further than “don’t be a dick here” it says outright and very clearly any behavior anywhere which is deemed harmful or someone has an issue with is grounds for punishment. I don’t think anyone would have a problem if it specifically was about how you officially communicate with other contributors but it isnt. Theres a questionable line in the contributor covenant, the code of conducts actual name, which says “Representation of a project may be further defined and clarified by project maintainers.” which leaves it wide open to determine who is and who is not a representative. Got something on your Linkdin that says you contribute to Linux? Got a little blurb in your Twitter biography? Well its three twos or two threes if you are representing something or not.

        http://archive.is/VBe4N This is for the crime of questioning a study whose authors admitted was flawed (I don’t get into that here and now) but this how its being used, two days after the code of conduct was initiated. That is what its designed to do, weed out people for any reasons at all if theres a personal or political grudge. Who is Theodor Tso? Well hes a fairly important software engineer at Google and probably the only Google Plus user but hes also a significant contributor to the Linux kernel in general. One who has gotten where he has and what he has though hard work not some privilege nonsense.

        Hes also one of the few people that took issue with some glaringly obvious security issues with Intel engineers wanting to turn over how Linux generates a random number to a hardware black box https://plus.google.com/+TheodoreTso/posts/SDcoemc9V3J

        Whose Sage Sharp? the person doing the accusation in that Twitter archive. Another Linux kernel and open source contributor that left the project citing an abusive environment so you know, no grudge to bare here, no pitch forks at the ready. If you want a little homework you can look into Sage Sharps involvement with The Ada Initative, the Ada Inniatives links to Githubs equally open to abuse code of conduct, the reason for The Gnome Foundation’s near bankruptcy just a short while ago.

        Or you can keep saying its all about not being a dick to one another.

  8. This is why I have always resisted against adding a CoC to all projects I’ve ever had a say in. The idea is noble, but you don’t have to be a genius to see that it’s the wrong approach and gives people enormous leverage to shoehorn their way into positions of power they would otherwise have never end up in.

    I have never seen a case in which a CoC has actually solved issues within a community, but on the other hand we now have a whole group of people who are abusing them. And while they have fun grabbing for power, the people who do the actual work just leave. You might have a more “diverse” community later when it comes to race, gender etc., but you just became less diverse in terms of skills. And skills are really the only thing which counts at the end of the day. Because the heavy lifting is mostly done by people who sit there in silence, just do it and have no interest in drama, not by those doing all the diversity/marketing/etc. work and producing drama all the time. But how could people who sign a “Post-Meritocracy Manifesto” ever understand that?

    I’m not convinced Linus will come back in the exact same role. And I’m sorry for saying this because I’ve met Greg Kroah-Hartmann a few times, but he lacks both Linus’ vigor and attention to detail. I just want to remember everybody about Kdbus – Greg was on the team who worked on it and was about to merge it, and Linus (rightfully) threw the whole crap back at them. Neither Kdbus nor its successor ever made it past Linus. Greg is also regularily ignored by his maintainers, something which has caused Linus to go ballistic more than once. I’m absolutely convinced the kernel code quality will decrease while Linus is away.

      1. You first?

        Word of warning don’t be so eager to credibility check in an environment where the only big name hold out of the Linux Foundation (Ted Tso) had rape apologist accusations thrown at him two days after coc was adopted.Thats just a recent example of this. Why not ask Larry Garfield about how the Drupel coc was used attack and bully him based on his fetish. https://www.garfieldtech.com/blog/tmi-outing

        Word to the wise, your haters can and will use this, trolls can as well. Virtually no one needs the drama of this nonsense at all in any way shape or form but go ahead name what projects you’ve made.

  9. The root problem here is that the Linux community should write their own CoC that is consistent with the community’s standards and the GPL. That CoC will likely contain many of the concepts from the Contributor Covenant CoC but it will be tailored for Linux’s actual environment. I think it is a mistake to apply an external, politically charged document by fiat onto the kernel community. Linux is a community of merit and consensus, it is fully capable of writing its own CoC.

    1. Many people have contributed for years or even decades. I don’t really get why the people who signed the commit which replaced the Code of Conflict (Chris Mason, Dan Williams, Jonathan Corbet, Olof Johansson, Steven Rostedt, Greg Kroah-Hartman, Linus Torvalds) assumed they had the authority to do so. Corbet isn’t even a developer but a journalist, they probably just got him on board to ensure a positive spin on LWN.

      1. The way the kernel has been developed, Linus as BDFL has the right to do anything he wants. CoC commit isn’t anything different than any other he creates or accepts. No one in the community has ever had right to tell Linus what to do. Why would you like to change it?

  10. So … if you “give” your code to a project, then get your panties all in a wad because you don’t think they treat you right, and you want to take your ball and go home. Sorry, tough luck, grow up. That is all I have to say.

    Lawyers make a living by making simple things complicated, and that seems to be what is going on here, along with the usual political wrangling that takes place in any group of humans. Different parties trying to find levers to manipulate power.

    1. Developers ‘gave’ their code to the project with a certain direction and CoC. Now, that is being changed. It isn’t the same game they gave their ball to play. If they changed the CoC to include promotion of ‘hate speech’ and intolerance, would you feel the same way?

      1. If that was their intent, they failed horribly, because they accidentally gave it to everybody! “Whoopsie!” They already shared it. For any purpose.

        You think a Code of Conduct is bad, imagine what the gubermint is doing with the same software! Jeepers.

        They can quit the project whenever they want, but don’t expect any satellites to get turned off, or for Android to suddenly refuse to boot.

    2. Look at it this way, If I “give” something to a project then a new project leader comes in and says that I’m not welcome on the project anymore for something unrelated to the project and I have to leave then shouldn’t I be able to take my contributions with me? E.g. – If I volunteer to drive some people to a convention but one of the people does not like me should I still have to let them use my van since none of them have one?

      1. I can see your point. But… I disagree.

        I think it comes down to, “did you give them the right to use your code or only loan it to them?”. You can argue loan if you want but I don’t think open source can survive that way. If contributors are only “loaning” their code to the project than a contributor may at any time remove the rights to some piece of code that everything else depends on. It doesn’t have to be for a good reason or a bad reason. That puts every contributor in danger that their efforts are going to be wasted because someone else that they have no control over might decide to turn against the project. What is the logical conclusion of that? Don’t waste your time contributing to open source software. So.. OSS dies.

        So lets look at your van analogy. No, I definitely would not let people use my van (if I had one) to go to a convention that those same people had kicked me out of. But… I wouldn’t tell them they suddenly owe me for all the past rides I gave them either. If I gave it to them for free I don’t get to take it back. I certainly can stop providing any more though!

        1. so the van analogy wasnt a good one but you did get my gist, My feeling here is that this is just the only weapon these developers have against the new CoC so they are trying to use it to get the CoC that they started contributing under back. Whether it works our not I believe that a number of developers will be separating themselves from the project officially as there has been a number of instances where peoples livelihood were affected by the outcome of having this type of CoC. They want to remain and code but wont want to risk the possible fallout if something similar to what happened to Larry Garfield among others happens to them.

      2. I get what you’re saying but I don’t think the analogy is accurate. I’m not sure any analogy involving physical objects will hold but that won’t stop me from trying.

        It’s more like you wrote a paragraph of a story with other people and now you don’t want to be involved with them for whatever reason. This book has been published and distributed world wide. Since you aren’t working together anymore you leave and want to take your paragraph with you. Now the story doesn’t really fit together, or at least not as well.

        I say no, you don’t get to take your ball and go, because you gave that ball to the group. It doesn’t matter who’s right in the argument, your ball isn’t your ball anymore. I realize this is different than typical corporate arrangements but some devs got paid to write the code, the community definitely owns that code regardless of any license, just as MS owns code you wrote while employed there. If they’re a decent community they should offer to remove your contribution as soon as is practical but depending on how key it was that may take a while and shouldn’t be a legal priority.

        If you build a house with your own hands and it eventually gets given to literally Hitler or literally Stalin, you don’t get to burn it down because you don’t like them.

    3. That’s a fine attitude to have if you’re happy to never have further contributions of skilled people that don’t neatly fit into the morality police’s pigeon holes and that can’t deftly navigate the social vagaries of hard left identity politics (and good luck with that if you’re on the spectrum).

      1. Given the maturity of Linux, not to mention the corporate investments, it will get along just fine without “further contributions of skilled people that don’t neatly fit into the morality police’s pigeon holes”.

        That said, I think a project can reasonably expect contributors to exhibit civility and professionalism in all interactions with other members of the project, and when representing the project to the public. I think it foolish to reject contributions from anyone because of views they express or actions they take outside of the project, because this adds an additional goal of promoting social mores, instead of maintaining a singular focus on the goal of producing great software.

        1. Getting along fine because it works today (with considerable complex support) and because the profit motive exists is not an optimal strategy for improvement. If linux was just some people’s hobby I might care less about it but linux literally runs an enormous portion of the world’s information infrastructure. The idea that it should be compromised for any reason (in this instance, a small group of people’s identitarian politics) seems foolish to me.

          The problem isn’t civility or professionalism so much as it is purity policing. This kind of ideological takeover always starts with that plea and ends with a crusade to burn all the heretics. It always ends with some degree of split and it always ends with a diminishment of the domain’s primary focus. The CoC isn’t even cool from the oven and it’s already being used as a stick to beat the wrong thinkers.There isn’t a single example of this kind of ideological takeover that has resulted in a better environment or outcome but there are many to the contrary.

          Good intentions (if you believe those pushing this, and I don’t, having read the anti-merit manifesto) and good outcomes are two different things. This is an enormous risk because there’s no example where this has worked to improve outcome. We are virtually guaranteed to diminish linux because of that. Personally, I just don’t care about the feelings of a bunch of bigots (and they’re always bigots, it’s always one rule for thee and another for me). Still, it doesn’t matter what I think as this is a done deal. It’s too late to stop or alter and the discord is already fomented (which is arguably a goal of these kind of takeovers, those purged being used as evidence of the necessity of conduct policing).

        2. You must not be familiar with complex software. Actually, that maturity makes it worse. Operating systems are getting more and more complex and esoteric at a low level, not less. It has no such ‘leveling off’ quality except in trivial things like commands in the shell (no real reason to make much changes to list or move compared to say, Firefox or video drivers).

  11. People want to pull their contributions from Linux because they don’t want to feel forced to accept a code of conduct that advocates professional behavior and rejects bigotry? Good riddance and take your code with you. I will happily set to work replacing it.

    1. They can’t pull anything. The idea that someone can stop GPL code from being GPL is a fiction, this have been discussed in the past and the answer have always been that one can’t. One can stop contributing. One can release the code under another license as the ownership is always with the author – but – one have released something to be freely used and distributed by others as long as the GPL is followed.
      It’s an open agreement of a type that have repeatedly been validated as legal and binding.

      1. Maybe just don’t be an asshole, and then you won’t get kicked out?

        Lot’s of people are spewing FUD about how the horrible SJW people are going to start going after innocent nerds, but I’ve yet to see anyone cite an instance of this actually happening.

        1. don’t be an asshole is in the existing code of conflict with out all the politics

          1. Okay, so guy who says shitty things about rape and sexual assault victims is getting called out for saying shitty things about rape and sexual assault victims, and also he didn’t sign off on the code of conduct that says, among other things, that you shouldn’t say shitty things about rape and sexual assault.

            What was your point?

  12. Forking is the solution to this problem. The CoC in question seems like a pretty boring and boilerplate attempt to try and make a welcoming environment. Bad faith actors will of course try to abuse it – so, like anything, it will come down to the judgement of those with the power to cast judgement. An attempt was made. See you at the next ‘controversy’ in 2 days.

    1. The main differences I see between the “Conflict” and “Conduct” are:

      * Code of Conduct takes a more proactive approach in spelling out exactly what bad behavior looks like
      * Code of Conduct promises a response to complaints from the advisory board (where the other is just, “report it” and no followup guaranteed)
      * Code of Conduct specifically gives maintainers the ability to block technical contributions from degenerates

      I suppose it’s the last one people have problems with. However, nobody has a monopoly on good technical contributions – for all the assholes you block, it’s assumed that the good will attracts twice as many quality devs to take their place.

      For an interesting comparison of the real-world implications, I would suggest to compare Python’s community and deliberate attempts at inclusiveness, vs that of the LKML.

  13. Maybe its unrealistic but perhaps the teeth in this COC should work both ways. If someone is going to be removed from the development team then none of their previous work should be included in the next release (anything listed as a stable build would be left complete), after all if the community feels strongly enough about the reasons to boot a developer then they should not want that persons code in the project at all. This would insure that the reason to boot a person is considered fully before actions are taken.

    1. If someone makes a demonstrably false accusation of violations of the Code of Conduct, boot the accuser out. But that’s not the sort of fairness the SJW’s want, ever. They want it so they can accuse and get someone ejected from a project, prevented from a government job appointment, or thrown in jail.

  14. So we have “sticks and stones, grow up” versus “don’t throw a tantrum, grow up.” Who is actually grown up? Was that a nonsense question?

    Regardless, Linus could have accomplished the same things with less effort by leaving insults out of his criticism.

  15. So you could sell someone a permanent patent licence, and then revoke it later?
    That would be wonderful since it makes software patents worthless. No one is going to pay if the licence can be revoked later.

  16. I would have been sooo much more concerned about how this is going to play out if it happened 15 years years ago.

    Then came HAL and PAM and various unnecessary complications that made it so much harder to just make the OS just get out of my way and the computer do what I want it to do. I always hoped that sound would become easily network transparent like X is but neither eSound nor aRts support ever became ubiquitous and now there’s PulseAudio that kind of works remotely but not really. Finally there was SystemD. Arguments over it’s treatment of the Unix philosophy aside, it’s replacement of so many system commands that we were used to for so many years with much longer, harder to remember, harder to type ones is ridiculous and it’s replacement of text logs and configuration files with binary ones is completely unhelpful. Why would anyone want that?

    Maybe it’s time to move on and start a new hobbyist OS anyway!

  17. The solution to this problem is already baked into the bones of the FOSS movement, but is social, not legal.

    Let’s assume you’ve contributed code to a project, someone in charge has kicked out out in a way that’s completely unfair, and the courts say you can’t get back the code you’ve contributed.. the whole losing strategy envisioned in this question.

    Now let’s look at the project that kicked you out: they just lost the most experienced expert in the code you wrote and maintained. If they want to maintain that code, fix bugs, or develop it going forward, they’ll have to find someone willing to learn how to do it.

    Having the time, interest, and skill to handle the code won’t be the primary concern though. As far as the person who kicked you out is concerned, it’s more important that your replacement is free from whatever quality got you kicked out. If you got kicked out for being a prima donna or an hard to work with, that probably won’t be too hard. If you got kicked out by a clique of SJWs who demand ideological purity, it will be harder.

    The farther a controlling clique’s focus drifts away from writing code that does a certain job, the harder it gets to find people capable of writing the code and keep them working together. Development slows down, bugs don’t get fixed, new features arrive slower if at all, and people using the code start to look for alternatives.

    The default state of any programming project is failure. Of the projects that do deliver working code, the default state is stagnation. Of the projects that continue to be developed, the default state is evolution into a Big Ball of Mud:

    https://en.wikipedia.org/wiki/Big_ball_of_mud

    Adding complications that have nothing to do with making the code better don’t improve the odds of success.

    Countless software projects have failed due to bad management, and a vast number of those failures started with the project leadership deciding something was more important than the code. This is nothing new.

    1. So many programs get to a state of absolute perfection (at least for a certain number of users) and work should be *stopped* except to update as needed for operating system patches or new versions that cause problems.

      But too many programmers don’t want to leave their ‘babies’ alone when they’re already perfect. They like to add new things that nobody but the programmer wants, or worse, remove things a lot of users have come to depend on but for some reason the programmer has decided must go, and they refuse to listen to the pleas of thousands of users to *stop fucking it up*.

      1. Which is one of the reasons for the existence of open-source software in the first place. If you don’t like what the developer(s) are doing to it, you can go back to the last version you liked, and support that yourself. At least in theory. It kind of breaks down when the software you want to be left alone is something big and complex, because then it’s rarely an option to “just leave it alone”.

  18. I would argue that the people who have contributed have every right to remove their contributions. Some people think they have the “right” to lean on other people and dictate how other people should think and behave. Those other people have every right to tell those some people to go F**K themselves sideways and then pick up their toys and go home.

      1. That’s not the complaint here. The Code of Conduct doesn’t cover that. It says basically that the particular features of the person behind the code don’t matter, only the code does. Anyone who thinks that the creator being secretly a stack of 50 hamsters is a bad thing that the creator should feel ashamed of will get kicked out.

        So yeah, no change unless you like to make other people feel bad. That was in the original Code of Conflict but wasn’t enforced very well, possibly because the responsibility was on the victim to come forwards rather than the community to not attack people.

        1. You mean like attacking people by claiming them to be “rape apologists” or being into “submissive women”. No sooner than the ink was dry did outside agitators begin their efforts to dictate things. The Civil War is coming.

      1. “The GNU General Public License (GNU GPL or GPL) is a widely used free software license, which guarantees end users the freedom to run, study, share and modify the software. The license was originally written by Richard Stallman of the Free Software Foundation (FSF) for the GNU Project, and grants the recipients of a computer program the rights of the Free Software Definition.”

        “In 2005, open source software advocate Eric S. Raymond questioned the relevance of GPL at that point in time for the FOSS ecosystem, stating: “We don’t need the GPL anymore. It’s based on the belief that open source software is weak and needs to be protected. Open source would be succeeding faster if the GPL didn’t make lots of people nervous about adopting it.” Richard Stallman replied that: “GPL is designed to […] ensure that every user of a program gets the essential freedoms—to run it, to study and change the source code, to redistribute copies, and to publish modified versions … [Raymond] addresses the issue in terms of different goals and values—those of “open source,” which do not include defending software users’ freedom to share and change software.”

        https://en.wikipedia.org/wiki/GNU_General_Public_License

        1. I don’t understand your point. The freedom to study and change the source code implies access to the source code, and that’s what the GPL is all about. There’s nothing in the versions of the GPL I’ve read, that says the software must be free. Only the source code must be free.

    1. Closing the source of subsequent releases is, and always has been, the prerogative of the creator. So what? That essentially means that he’s not supporting it any more, which makes it available for other developers to fork and support. Nothing new here.

      I have to wonder why the developer of the MaxiMite released it as open-source, if he was against other people modifying his design.

  19. In theory. A developer must convince the court the project’s development “would be prejudicial to his honor or reputation.” I doubt, any court would say introduction of CoC is.

    In practice. Almost all of current Linux development is made by corporate paid programmers, who don’t own rights to their commits. Their employers do. I suppose, the amount of code “at risk” is very small.

  20. I wonder if the current shitstorm over at GPGTools can be seen as a microcosm of this issue (please forgive me; I’m coming at this from the perspective of a “User” without a grasp of the nuances of licensing)…

    Just this past weekend the developers released hell by sneaking-in a paid version of the previously-free OpenSource-based GPGTools in the guise of an upgrade. Furthermore, they invoked a kill switch which effectively cut the nuts off of all earlier versions. In so doing, they made it impossible for simple users to either encrypt or decrypt their emails in the manner in which they had become accustomed. The only way to regain this functionality is to pay-up for nebulous vaguely-defined “Support Plan.

    Those of us who have been left high-and-dry because we’ve chosen not to capitulate to such extortion are wondering if these kids can get away with what they’re doing. But now after having read this article, it seems that the answer may remain unknown because even in the much bigger picture of FOSS, things aren’t very clear.

  21. This could turn out to be a blessing in disguise. Imagine if a contributor decided to rescind their license, they could sue everyone of the TLAs best friends, Facebook, Google etc. to shut them down.

  22. “Everybody should be using desktop Linux! It’s not just for nerds any more. Your grandma can use it!”

    “Your computer will now need to install important security downgrades because the developer of that contribution is butthurt about a code of conduct and has retracted the license. Would you like to continue?”

  23. I don’t think this is a difficult legal question, here’s why. If you release something under a specific license and I download it, I would have agreed to those license terms. Later, you can release new code under a new license but your original agreement with me would still be in force. I have no obligation to check to see if you changed the terms of our original agreement unless that agreement had an expiration date. It is as simple as this. We agreed to give me a book and we execute an agreement that says its my book and I can do with it what I please. You cannot later come back and say I can’t, it’s that simple.

  24. telerik open source a basic version of they’r .net tools with advanced grid support… that version evaporated off github when they decided to remove that part, can’t even find clones, after that i’ve learned to keep an updated clone of all dependencies of my projects

  25. If you connect the dots, a couple things come to light:
    1. 80% of the people targeted by the new CoC and booted from the project are people that had concerns about kernel security.
    2. Giant behemoth companies like Facebook and Intel have been contributing to Linux more, and were getting called out by the devs in #1 for their egregiously insecure patches.
    3. Said behemoth companies in #2 had demonstrable intent to make the kernel less secure, as patches blocked by devs in #1 were recommitted and merged after the people in #1 were purged.
    4. Said behemoth companies in #2 have incentives to make the kernel less secure in order to serve their government partner repressive regimes.
    5. Said companies in #2 introduced the CoC as sections of the CoC were shown to be block-copied from Facebook’s employee handbook.
    6. CoC violations can be made up from whole cloth at the companies’ in #2 request in order to remove troublesome developers.

    Conclusion:
    The inclusion of the CoC has been done by giant companies and their government partners using SJWs and witch-hunt culture in order to make the kernel more exploitable by said government partners by removing skilled developers that call bullshit on giant companies’ attempts to make the kernel insecure.

    1. It’s an old trick like how they got rid of midwives, or how Futurama (event not the TV show) worked. It’s not exactly original, either. Tower of Babel legend comes to mind. :P

  26. “You” [all/many] make it so complicated. Someone squats more than 20 yrs while you actively try to chase them.away and fail, it’s there’s. Tick tock. “Right to pass over, revocable without notice. You can use.my code if… and they don’t follow “if,” poof.
    I see only a question of removing code in present copies to the date of complaint. as iffy. However, I see no probkem in saying, no more use/extentions atop it, and no more copies, aside from your own single archive copy. It would hurt that originator a LOT. But one has the right to cut one’s own nose off to spite ones face, business-wise. “It will ruin my bicycle business to go around land that I have cut across for 15 years!” Unfortunate. Negociate. Become a fisherman. Carve horse figurines. “I let you for 15 years. Changed my mind. See ya…” Exceptions in law are for safety devises… windshield washer blades. “Greater public safety issue.” With this, the gov’t can steal.

  27. Uhhhhhhhhh… I’m confused… The GPL is a redistribution license, and only kicks in during the act of redistribution. It has nothing to do with day to day usage. Likewise, git is a distributed source control system. If even one person retains a git tree containing the ‘threatened’ source, the cat is still out of the bag.

    Hell — look at https://en.wikipedia.org/wiki/WASTE

    “In 2003, less than 24 hours after its release, WASTE was removed from distribution by AOL, Nullsoft’s parent company. The original page was replaced with a statement claiming that the posting of the software was unauthorized and that no lawful rights to it were held by anyone who had downloaded it, in spite of the original claim that the software was released under the terms of the GNU General Public License.”

    It’s still out there.

  28. SJWs have been fiddling and playing with CoC for years now.

    I hope all contributors recind and remove all the contributed GPLv2 code.

    Imagine a ESR that doesn’t code, living on your couch, taking credit for your work AND judging you without any competency in coding except smearing every wall they touch with shit.

    Seriously, if a person has gone to a “school” that has a Marxism 101 or Gender studies degree be VERY careful letting them close to an project. They will blame incompetence on being a victim of their incompetence and you have to like it.

  29. “It’s worth noting that Linux does not utilize such an agreement”
    If the argument is that other licenses include a additional clause, the lack of such additional clause is still not proving anything regarding GPL2.

    “the closest thing we find is Section 4”
    And the closest thing is still far from proving the claim right. Section 4 is speaking of compliance with GPL2, again you will have to prove that introducing the specific CoC is in any way invalidating compliance with GPL2. If you can’t, it’s not breaking it.

    I also think we need bring out the elephant and ask why the individual or the claimed group making this threat did not bring it up on the kernel mailing list where it belongs. Kernel contributors knows how this works, that would be the only natural thing to do if you have an opinion, are affected, and want a discussion. Learning from the past weeks it’s clear that many have an opinion and even totally unaffected people tries to make it look like they are horribly affected by a rule which only tries to make a more positive communication environment between kernel contributors*. My impression at the moment are that we’re getting trolled and that both Raymond and the media bought in to it.

    *PS: Please don’t give me the history of the original author of the CoC, I know it very well already and it’s not relevant. I also think she fails to understand her own text, the piece of text itself is actually very good and that’s the only thing agreed to. Just as Torvalds is the original author of the kernel, he has no authority on how you use your computer. If you worry about some big horrible changes then hopefully the interview with Torvalds will help you sort out a few things: https://www.zdnet.com/article/linus-torvalds-answers-5-questions-in-bbc-letter/

    Take care! :)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.