Hacker News new | past | comments | ask | show | jobs | submit login

Seems a reasonable place to ask. The Linux kernel is a solid contender for the most valuable software project. The amount of repeat work avoided by building on that is infeasible to estimate. It doesn't appear to be at risk of being suddenly proprietary.

What do we think is the primary reason why it is immune to this failure mode?

My guess leans towards there being a large enough number of corporate interests in play that none can seize control from the others, but that seems likely to be an oversimplification.

Why is Linux not vulnerable in the same way Redis has proven to be, and is that a model that can be copied by other software projects to avoid this failure mode?




Two key differences: Linux is (mostly) licensed under the GPL version 2.0 only, and has diverse copyright ownership. No single person or entity can change the license. That means no one can pull the rug from under the community like the Redis change (and so many other corporate-controlled, copyright-assigned, non-copyleft projects).

(Linux also has a huge pool of users and contributors, which discourages hostile forking, even if the licensing wasn't a factor.)


It is one of the big enough projects that companies actually pay for their own devs to develop it. And they lose little by providing those changes to others. I think reality is that you need that sort of scale for it to work.


> And they lose little by providing those changes to others.

I am unsure about this. Some Linux patches can be of high value, say better TCP congestion control. By releasing such patches, others can get them for free while it took you significant effort.

In practice, due to Linux's lack of internal stable API and fast pace of changes, Linux makes it painful to keep private patches, so there is incentive to contribute upstream. Differently engineered software project can make it easy to keep private patches. In other words, Linux uses technical methods to compel contribution instead of legal methods.


> Some Linux patches can be of high value, say better TCP congestion control.

Every significant piece of code can be high value. But keeping it in the open brings more value to the world at large.

Open source projects do not force you to contribute. You can keep your improvements to yourself if you're so inclined, and patch your copy or products (if the license allows).

I believe the value lies in the developer itself. Not in the code. It's just an instance of development, and if the developer is that brilliant, they can always develop things of same high quality.

IOW. Keeping things to oneself is not meaningful.


You can't redistribute your high tcp Linux kernel without source in GOL license, so it can go back upstream (eventually).


> By releasing such patches, others can get them for free while it took you significant effort

Conversely, you get others’ patches for free without significant effort on your part so it’s still in everyone’s interest to contribute.


It’s GPL and they haven’t made contributors sign a CLA. So if anybody wants to relicense the Linux kernel, they need to get permission from every single copyright holder retroactively. This is infeasible.

CLAs exists to get this permission up front before any code makes it into the project, which is what enables projects like Redis to relicense.

BSD style licenses being more permissive than the GPL also contribute to this; you can incorporate BSD-licensed code into a new non-free version but you can’t do that with GPL-licensed code.


1. It is GPL, so you can't change the license without permission from all contributors 2. It has lots of contributors. And now that I think about it I guess some of those are not even alive anymore to grant any sort of permission


It is also GPL 2 - not "GPL 2 or later" so it can't be relicensed to a future version that has additional or different terms.

Linus on GPL 3: Linus Torvalds says GPL v3 violates everything that GPLv2 stood for https://youtu.be/PaKIZ7gJlRU


> The amount of repeat work avoided by building on that is infeasible to estimate. It doesn't appear to be at risk of being suddenly proprietary.

They may not be as featured, or run everything, but if that were to happen I'm hoping FreeBSD, OpenBSD and NetBSD would step up to the plate - although Linux would certainly be forked as well.


Redis didn’t go “suddenly proprietary”. They switched to a source available license. Cloud providers will need to pay if they’re making money selling redis.


I wouldn't call Redis a failure.

Source available and commercial is a great compromise.

OSS is not a business model and we live in reality.

The less free money goes around, the closer to reality business will be.


All it would take is another license change preventing you from using it.


From using the new version released under a different license, you mean. You’d be able to continue using your existing version or switch to one of the forks.


That was just as true before as it is now.

The real losers here are cloud hosters like AWS and Azure.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: