Is this ever an actual goal for most GPL projects? Usually the ones I talk to are not even interested in gaining more users.
The article makes a case that this will eventually push GPL out of the mainstream. No one will use GPL because they "have to" (which is the whole premise of copyleft!). It will only be used by enthusiasts
I have to admit I think a lot of people with this sort of "death to capitalism" mindset simply won't get anywhere, because they literally don't want to. I guess that means they may eventually fade into obscurity.
But the majority of project leaders I have talked to all seem to follow this mindset... they're not interested in making money, and "this is not a popularity contest."
Yet when a fork inevitably emerges, they go nuclear. Reminds me of a quote I saw one time... "they don't want open source, they want to be the ONLY source."
The article makes a point that permissively-licenced projects have the best survival characteristics, and that's why most (quality) software will eventually be permissively-licensed, while GPL will fade into obscurity and will be used only by enthusiasts why care about fairness more than they care about the actual quality of the software that they use.
The thesis is that "GPL code becomes irrelevant", and they are probably right about GCC. It doesn't mean GCC goes away, just that it will become irrelevant to more people. Sun Studio and Borland C++ are even more irrelevant, not sure where that fits in the conversation. Is MS Visual Studio becoming irrelevant?
While there's nothing wrong with purely enthusiast projects, they never got the amount of traction practical FOSS projects get. How many users does SerenityOS have, compared to Linux?
I invite people to ask themselves, do we really want a "pure hobbyist Linux OS"? How many modern feature are we willing to surrender for it?
Haha. I work on Solvespace which is technically inferior to FreeCAD, which is also inferior to the big commercial offerings. We shall have our MVP in a few more years! Most our contributors would not be working on it under an MIT license. I certainly would not.
See: Bram's Law
I've been thinking about this a lot recently, because GPL was meant to ensure that vendors couldn't take OSS, turn it into closed source, and use it to extinguish the OSS.
As JS-writing eng I live in an MIT-native offshoot of the OSS world and for us the ratchet that ensures we always get more and more free software is basically the fact that when your product is a script run in a scripting engine you can't ever truly hide anything.
Since we have an alternate ratchet that has proven that it works to increase the amount and quality of OSS (over a 20-year time period), the GPL does seem as you say: a relic of times when we it seemed like software might only be a hobby.
I'm writing a VCS kernel, basically, and its cost me the last 5 years of my life. My code is MIT. Do I have to think about the dangers of embrace-extend-extinguish? Yeah, but having the best product is a very strong defense, and building the widest coalition of supporters you can is how you get there.
GPL would not be eliminating the room to undercut me with a slightly more viral clone of my product, but rather creating more room to undercut me. This is a real problem for a piece of software the value of which is in simplicity not complexity!
sure, "contributing is cheaper than maintaining a fork" is true most of the time - but the moment new Microsoft comes in with "embrace, extend, extinguish" (or just copy and change), you're doomed
and heck, we had that exact thing happen last autumn, iirc - making big news on this website
If it ain't GPL and it IS popular, I think those kinds of things are more likely to happen than not.
Even GPL can't force a company to maintain and keep developing an open version when the company doesn't want to. Even if Redis was GPL (no CLA), they could still abandon it and write a compatible clone from scratch. AI makes it even easier to do
You're making a big stretch here. Sure, you can be left in the dust behind their proprietary fork, that's true: https://hypercritical.co/2013/04/12/code-hard-or-go-home
But your habitual workflow isn't "doomed". You can always fork and keep using the same open version of the project that you've always used. If the project is popular enough, there's usually a community that keeps maintaining that fork.
That's the deal that you get. Free software was never about "free upgrades forever". It's about the freedom to fork.
I never noticed the word "fork" in the GPL. You may want to reread it, as I think you missed the point.
One person's business is another's platform.
I think that much of the core features in Desktop Photoshop-style products or video games probably requires legitimate short copyright, for example. I don't think copyrighting a plugin interface or header files or hardware drivers makes any sense, unless there's significant creative work like e.g. the portions of GPU drivers that trade off appearance and speed in novel ways.
As stated in the article, Linux is the notable success story, but anecdotally it seems that the majority of projects with large company contributions are licensed with BSD/Apache/MIT but with contributor agreement attached.
I wonder if anyone has compiled any data on whether GPLv2 does actually encourage contributions more than the more permissive alternatives.
GPLv3 isn't even worth mentioning in this context, great concept, abject failure to thrive IMO.
And as a SW developer doing client side/apps as well, using GPL/LGPL is a total pain and basically cost prohibitive, unless I work on my personal small project where I don’t care about having to/risking to open source the rest of the code and getting sued/cloned…
Real life example from ~2010 - we ended up including an LGPL library in our mobile app code, and published/upstreamed all the modifications we did to that code (mostly ARM optimizations). Once the app became popular, our competitors came to us demanding the source code of our app - just because iOS didn’t support dynamic libraries (so we had to statically link it), and giving them the object code to relink it wasn’t enough for them (which would satisfy the spirit of LGPL), because they really wanted to see how we hacked around iOS camera input APIs…
So they can take a hike?
Doesn't that also satisfy the letter of the LGPL v2?
> Accompany the work with the complete corresponding machine-readable source code for the Library [...] and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library
if you develop closed software for a walled garden then relying on gpl is still possible but a rather contradictory philosophy. i guess the alternative would have been developing all that from scratch, or getting it from elsewhere, likely paying for it, which would have made those costs even more prohibitive ... otoh i really don't understand those prohibitive costs because supplying the object code was all you needed. what were those? lawyers?
I'd mention for a commercial library creator, say QT, the GPL can be quite convenient because the commercial clients they have can't just take their stuff for free and use it but instead can use the GPL to sample and then come for a commercial license when they're going to use it that way.
That is to say, just about every license that is used today serves a particular purpose for vendors and thus none of the licenses are likely to go away as long as we have different vendors with different aims.
It's not, if you can comply with the license.
If you want to take advantage of free (L)GPL code in statically linked binaries without providing the source code to your customers, then yes, that is a problem. Although with LGPL the linkable binaries should probably be enough.
Is this a true assertion? If you define sufficiently large company to be Google, Microsoft, Amazon, etc. then sure, of course they can. That's an extremely high bar though and I would bet that even then, these companies would have to pick and choose their battles.
Another comment [1] even references the "Bram's Law". It basically says that any piece of software that's easy to rewrite will be rewritten countless times (and most rewrites are going to be bad)
Noteable counterxamples (excluding e.g. Linux):
- Git (GPLv2)
- Blender (GPLv2 & 3, from the looks of it)
- Krita (GPLv3)
- MySQL (GPLv2) -- still seems very popular in 2025
- QGIS (GPLv2)
For new things I'd guess PostgreSQL vs MySQL is probably on the same order as llvm vs gcc; probably with PostgreSQL being better off than llvm even.
[1]: https://github.com/jj-vcs/jj/ (started by a Googler as a hobby project, now their full-time job at Google, so kinda fits into the "big orgs will replace things with permissive-licensed versions" narrative)
Most of the new databases of last 15 years have some kind of restrictive license that aims to stop AWS from selling a managed version of it that also limits what I can do it. So they are dead to me. Postgres is growing not just because it is a good database which is taking ideas from document databases, but because you can build on top of Postgres and feel confident that you can commercialize or open source your work and people will be able to use it.
In my view code (and all knowledge) wants to be free and a commons of knowledge enriches the whole world. I am opposed to most forms of copyright, patents and intellectual 'property'. Aside: My compromise position to this maximalist view is that I'd accept a 5 year copyright term with an exponentially increasing renewal fee.
For me MIT/BSD/Apache is a way to provide code with minimal encumbrances under the current dominant legal system. GPL is an attempt to free knowledge that relies on the legal system and the threat of men with guns coming to force you to comply. However noble the intentions at the end of the day it is reliant on state force and reduces freedom, it is very good at providing fees for lawyers.
Corporations can't embrace-extend-extinguish open source. This is because the source is always available. Sure they can use that knowledge to build a new, more popular, thing, but the existing source never goes away. It represents an un-enclosable commons.
Some counter-examples:
* git is now mostly github
* khtml is now mostly chrome
* linux is now more android and chromeos than linux. Anyhow, the plain kernel is deeply corporate.
You can still fork those project. But it would be mostly meaningless to do so.
All the knowledge in those codebases is preserved for all time, freely available to anyone. They have been built upon in ways that don't necessarily give back but that wasn't a destructive event.
Aside: Though if I remember correctly git and Linux are GPL so they create categories of thoughtcrime under copyleft if a judge holds your code to be too influenced by them. How influenced is too much? You better have enough money for lawyers to find out.
What does this sentence actually mean? Every time I've heard of it it is just stated as an obvious fact with no explanation, or it seems to just mean "I want knowledge to be free".
To expand a bit more, code is freely, instantly, trivially duplicated, shared and remixed[1]. Much like knowledge there is no scarcity for these artifacts without legally mandated, police enforced, artificial scarcity. If the full source code for anything (Windows 11, EPIC Systems, whatever) was leaked tomorrow that would be a non-destructive event for both the code and knowledge involved. People work around this with trade secrets and intellectual property law but the 'entropic' norm is for these things to become more available, not less.
[1]: Since we're being literal there is of course some energy and time cost to the listed actions.
Even with all the Rustaceans rewriting in Rust while abandoning the GPL, their flagship - Servo - is GPL licensed.
There is an aversion to CLAs among those donating their time, and with that an aversion to permissive licenses.
Im sure both will be around for a long time, but in the very long term GPL wins.
And even even that's a bit of a problem for the Servo project, as it makes it hard to move code between Servo crates and other Rust ecosystem crates (which are typically MIT/Apache2.0), which means that Servo is it's own "island" somewhat disconnected from the rest of the Rust ecosystem.
(there's nothing inherently wrong with the MPL, but it being a different and incompatible license to the rest of the ecosystem does cause problems)
Clang/LLVM: permissive
Rustc: permissive
Firefox: MPL
Chromium: permissive
Postgres: permissive
LibreOffice: MPL
CPython: permissive
and so on...
What makes the GPL irrelevant is AI. AI in it's current incarnation is basically a magic copyright remover. It can memorize all the patterns, tricks, algorithms, and architecture of open source software and implement it again. In a few years you won't need git because you will just have an AI stamp out a git compatible tool if you need one.
So if you care about Freedom, we need to move the battle from making sure you can get a copy of the source code to git, to making sure you can get a copy of the weights of the AI you are using to create software on demand.
No, it's the opposite. The premise of copyleft is forcing the dependents to contribute back to the community. If the corporations are writing proprietary replacements instead of contributing, copyleft has failed to deliver on its premise.
In practice, permissively-licensed projects get more contributions back and benefit the community more. Simple as that.
We only know when they contribute, we have no data on when they don't. Stories like LLVM are good evidence for what you are saying, but the linux kernel is good evidence against it. Dozens of companies are forced to work together for the common good at a scale and level of resources that is unprecedented. Without the GPL this simply wouldn't (actually from an economic / game theory standpoint it couldn't) happen.
But I buy the article's argument that upstreaming a patch once is simply cheaper than maintaining your own proprietary fork forever. It externalizes the efforts of maintaining it in the future. This means that public, community-maintained, permissively-licenced projects are a good deal for companies, and should win from the economic / game theory POV
While I have always used maximally permissive licenses on my own open source software, I've been rethinking that stance in the past couple of years. I'm not sure where I stand now, but I don't fully agree with this post.
In particular, perhaps my number one fear about the world at large is that the untethered effects of economies of scale are clearly leading to a net transfer of power into the hands of fewer and fewer corporate leaders.
Permissive licenses are arguably agnostic to that effect: anyone can use the software, corporation or not. But given that large corporations already have significant economies of scale, the emergent effect is that a corporation can extract more value out of a piece of open source software than you or I can. If your goal is to discourage a handful of oligarchs eating the world, a permissive license may be opposed to that.
It's sort of like breeding fish and dropping them in a lake. Sure, anyone can then grab their rod and reel and catch a few, so you aren't privileging the commercial fisheries industry by doing so. But once the trawler shows up, they're going to harvest a hell of a lot more fish than the dude with a bamboo rod.
You may be thinking this analogy doesn't work because software isn't like fish. Copying a piece of software doesn't remove a fish from the lake for others to catch. But think about this at one level of abstraction higher.
Copying software accomplishes nothing. It's just bits sitting on a disk. It's software being used by humans that matters. When a corporation takes a piece of open source software and puts it in front of users, time a user spends using that corporation's code is time not spent doing anything else.
While software itself isn't a consumptive good, human attention is.
Notice how all of the biggest, fastest growing corporations understand this. Attention is the ultimate economic commodity. Any company who can mine it effectively wins and any company that fails loses. This is why in the past decade we've seen seemingly weird business moves like Apple producing movies, NVIDIA doing game streaming, Amazon shipping games, Walmart selling video streaming, etc.
We are shambling towards a post-material world where the most valuable good, the thing that produces the most value, is human attention. And, unfortunately, a few people figured this out sooner than the rest of us and a gobbling up all of that mental real estate and leaving nothing for anyone else.
GPL & Co are open source for users
In the long run, even from the user's perspective, GPL & Co is only for enthusiasts who don't prioritise the actual quality of the software that they use.
As a user, I value my freedom, but BSD & Co gives me enough freedom. The article assumes that it's the best tradeoff for most users, and I agree with that
GPL is all about doing something for users. It is users who are able to request source code. My entire network setup is based on the fact that I can customize my router which I can only do because users were able to request the source for the router in order to customize it.
When it comes to "annoying for developers" we need to be clear. The GPL is annoying for developers of software that is not open source. It annoys them because it says they must either take the open source deal or else rewrite it themselves. Apple has famously used a lot of time and money to rewrite GPLd thengs. This is the goal.
OTOH open source developers need not be annoyed by any GPL dependency since they can always use it without any trouble to themselves.
Moreover, a company can release a GPL'd version of their software and also offer a commercial license for their software (see Qt etc). So someone who's charging for their software can use it if they themselves pay. Some commercial vendors might annoyed by even this. But it would seem they "doth protest too much".
It is also annoying for developers of open-source software that is not GPL-licensed.
> Apple has famously used a lot of time and money to rewrite GPLd thengs. This is the goal.
As an aside, that's a terrible goal. Rewriting the same projects over and over is a waste of human potential. We could be solving unsolved problems and actually making the world better, instead of pursuing this weird and misguided notion of "fairness"
You can license your software as you wish, but in the long run the GPL has ensured that contributions reach back upstream for the common good, rather than for profit. The GPL gives protections for the people/end consumers, much like labour laws do in your own country. The GPL ensures that your contributions are respected, available to all, and not abused for profit (not always true, but tribunals have enforced the license terms before). The GPL has the effect of doing this globally while allowing contributions back from a global audience. It's genius and the companies absolutely hate it.
It's not about "fairness". It's about reality and survival characteristics.
As a user, I care about my freedom too. But permissively-licenced projects give me enough freedom to choose them over copyleft projects that are even slightly worse in quality
The author talks about GPL projects feeding back on themselves to create technological dominance. But it's much more than that. GPL encourages organizational dominance, too. It starts with watch dogs looking out for GPL violations. And it ends with a big nonprofit foundation providing training and paying developer's salaries. Why did Linux blast past BSD? The popular story is that some company was trying to claim ownership over BSD. But the same thing happened to Linux a decade or so later with SCO. I think the license created a no-win situation for anyone who wanted to create their own Unix-based OS. If it wasn't Linux-compatible, it wasn't valuable. And nobody could keep up with Linux's rapid pace of development. So everyone gave up and started contributing to Linux, causing the pace of development to increase even more. Now, Linux has what, a million commits per year? Something insane like that. Try achieving that with a BSD license.
When SCO sued IBM, people were already using Linux including one of the biggest and most trusted names in computing (at the time): IBM. Migrating away from something is a hard choice. Likewise, Linux had IBM's army of lawyers defending it (yes, BSD was defended by UC Berkeley, but the school could have easily folded over a project that wasn't part of the school's core mission). SCO also wasn't much of a threat - they were a dying company trying to win a case against the biggest names in the industry.
It's a lot easier to spread FUD against something no one is currently using that has a viable alternative. In 1993, Linux and BSD may have been equal, but AT&T's legal threat carried weight. People choosing one or the other weren't already using one. By 2003, 25% of the internet was powered by Linux. People were already using it and weren't going to be scared away by the claims of a dying corporation while powerful companies were defending Linux.
You say yourself that if something wasn't Linux compatible, it wasn't valuable and so everyone had to be chasing and reimplementing Linux compatibility. But if BSD had been established for a decade and Linux was chasing BSD compatibility in 2003 and then SCO sued BSD, BSD would still have maintained dominance.
When a company claimed ownership matters. Which company claimed ownership matters. "How big" the OS was when the challenge came matters.
Frankly, reset Linux adoption to 0. Have everyone use BSD for 2-4 years. Then reintroduce Linux. You won't end up with Linux dominance. You'll end up with BSD dominance. Linux had a multi-year head start. As you note, once you become the dominant target, everyone else is chasing you. If BSD had a multi-year head start, Linux would have been chasing BSD and the roles would be swapped.
That second claim could not have happened until IBM was contributing to Linux. That part of the lawsuit could not have happened in 1993. (The first part was similar to the BSD lawsuit.)
NewsaHackO•3h ago
If companies want to use manpower to reimplement GPL code, then fine. It’s always funny how accommodating people are for these companies.
Expurple•3h ago
1. In most areas, they eventually will!
2. If there is a permissively-licensed project in that area, at least there's a decent chance that the "reimplementation" will be a fork of that project. At that fork has a decent chance of staying open or even being merged back into the upstream. That benefits the community more than a proprietary from-scratch rewrite (which would follow from a GPL-only open-source scene)
lc9er•3h ago
rglullis•3h ago
Expurple•3h ago
That's always been the deal. Open source is not a guarantee of free support forever! It's a guarantee that you can always fork and keep using the project (or even developing it further)
lanstin•2h ago
rglullis•2h ago
There are some projects/people that I donate a small monthly amount. I don't do it because I'm expecting a specific feature to be developed, but simply because I think it's important to have support developers and let them work on something without being concerned about how to make a living out of their work.
Expurple•2h ago
umanwizard•2h ago
rglullis•1h ago
Expurple•3h ago
elsjaako•3h ago
If you're going to talk about theoretical behavior from big companies, you can make stories any way you want.
Let's say a big company selling computers wants to include a PCB editing software by default. If KiCAD was Apache licensed they may be tempted to make a special version for their customers, as a unique selling point. But it's GPL, so they have to choose between rewriting completely (a huge process), or just publishing the changes and being happy to include a good program.
Or a company makes modifications to a GPL program for internal use, and decides they want to share it with partners/customers later.
I have no reason to think these stories are more or less likely than the story of a company completely rejecting the GPL option but still deciding to upstream their changes.
m4rtink•2h ago
Same with Microsoft and the Windows TCP stack lifted from BSD as well.
Compare with GPL licensed projects, like the Linux Kernel & its license making many projects possible, like the OpenWRT project for example.
phkahler•2h ago
Companies that use software like it Free. Companies that develop software like it permissive. There are more users than developers, especially for large more important programs.
umanwizard•2h ago
It's simple in my experience.
Many big companies have some set "A" of code that they want to keep private, and some set "B" that they don't care about keeping private.
Lawyers are worried that at some point someone will accidentally include GPL code in something from "A" and force it to be made public. So they ban GPL entirely. They could in theory just ban GPL code from "A" and allow it in "B", but they can't trust that among thousands of employees none will make a mistake, so they just ban the GPL entirely.
Expurple•1h ago
Because upstreaming a patch once is cheaper than maintaining your own proprietary fork forever. It externalizes the effort of maintaining it in the future. That's the point that the article makes. And it's true in my experience. My employer allows and encourages me to contribute back to our dependencies. Those aren't the core of our business and our competitive advantage
throw_m239339•2h ago
Expurple•1h ago
As a user, permissive licences give me enough freedom.