The great filter of open source projects
This is how you make yourself vanish into nothing
-- 24 frames, Something More Than Free, Jason Isbell and the 400 unit
So, with the recent layoffs at Mozilla -- among other things -- a bit of discussion on the sustainability of open source projects has been reignited. There was a wide range of takes: from "FOSS is dead" (no) to "we need to re-decentralize the internet" (yes). I could not quite help putting forth opinions on the matter myself and did so on a short twitter thread. Fundamentally though, the opinions expressed on this matter seem to almost talk past each other -- and I think the reasons for this might be found in history of open source(1).
users are contributors
In the beginning, pretty much all open source projects had an almost complete overlap of users and contributors. Or at least potential contributors. E.g. the original GNU projects pretty much solved the problems of their own contributors and even most of those that where not contributors (yet) where non the less in the majority able to contribute to all parts of them. You can also see it in the original announcement of Linux as
and while Linux grew way beyond that, there are still indications of this being true today when the main (and only) collaboration tool of the project, the LKML, was down for an extended time in 2018, because a mail server in a cabinet at someones home was not booting through after an power outage and the person to kick it was on vacation. The Linux kernel project was still self-hosting its infrastructure in 2018.
Another -- later -- project, that I am assuming to have been quite resilient and which I am assuming will continue to be quite resilient is gentoo linux: By requiring users to compile all software themselves, this distribution makes their users either give up on their installs or gets them at least halfway to be packagers (and for a distribution, packagers are contributors) themselves. Also, by not having to deal with binaries, gentoo reduces its infrastructure needs to a minimum. And even while there are some signs of downsizing at gentoo, I am hopeful that the flexibility mentioned above makes gentoo more sustainable and self-reliant than others for quite some time to come.
users are not all contributors anymore
In the 2000-2010 decade, especially in the second half, a lot of open source projects joined the choir were only a minority of users were contributors too. For many, the majority of users were not even possible contributors across the project. For a few, contribution was even implicitly limited to a closed circle. This gave rise to the perception that something like an "open source product" exists -- especially by users. Here are some examples:
project | complement | contributors goal |
Mozilla | web | prevent Microsoft from monopolizing the web, later generalized |
OpenOffice.org | enterprise productivity | |
Android | web/apps | prevent Apple from monopolizing the web, app and smartphone market |
Chrome | web | protect a cloud, an advertising business and a search engine |
Ubuntu desktop | many | changed over time, my guesses: initially, make launchpad what github is today, then complement the Ubuntu phone, then cloud offerings, but now something new maybe up |
Of course, no such thing as an "open source product" exists and all of the above are variations of Strategy Letter V, which -- being from 2002 -- was already old by the time most of those were started:
Smart companies try to commoditize their products’ complements.
All of the above projects, commoditized their complements and this allowed users, who were not contributors to still benefit from the work of those who were as these contributors were interested in protecting the complement. With technology moving to the web and the cloud you can see this pattern repeating there in a few examples:
project | complement | contributors goal |
react | ensure all browser stay compatible with own use by making the framework widely used | |
istio | cloud hosting | raising the barrier to entry for microservice hosting (embrace and extend style) |
the great filter of open source
So, what does this have to do with the layoffs at Mozilla and the current struggles at other open source projects? Well, the complements from strategy letter V that might motivate contributors to work on projects beyond their own needs exist at a given point in time, but ... panta rhei, and this gives different outlooks for projects depending on how broad the complements are that it is serving:
- Mozilla is financed by Google for selection of the default search engine as almost single source of income, but once Chrome came around and hugely successful, the motivation of the biggest/single contributor is becoming more and more questionable.
- Given online collaboration platforms, desktop enterprise productivity is not much of a business anymore these days -- certainly not as a product, maybe still as a service, challenging the biggest contributors to LibreOffice.
- The Linux kernel on the other hand is continuously serving a lot of users that are not contributors: While it very early on started self sustaining by just serving its contributors, it grew so many complements quickly that it is not endangered by one contributing business failing.
- The Blender project created a broad alliance of content creators, gaming platforms, gaming hardware producers all pushing (and financially supporting) the project to exist as a commodity to enjoy their complements.
Ultimately, open source projects provide a commodity. If their infrastructure needs are limited and their users also contributing they should be quite resilient (see e.g. gentoo). If they have many non-contributing users but have multiple complementing products, they will likely do well too.
However, having non-contributing users and only one complement might just be the Great Filter for open source projects: Once this complement is vanishing, so will the project -- at least for non-contributing users. The remaining contributors -- those that work without the need for a product, a complement, a business or users -- will not feel that too much. But the non-contributing users will, as they wont be relevant at all anymore when the project downsizes itself to serving its contributing hobbyists alone.
conclusions and unrequested advice
So, at least for Mozilla and LibreOffice, I have some opinions and unrequested advice. In general, I see an urgent need for open source projects to establish a shared understanding among contributors what currently is a commodity -- and thus is governed by the project and its institutions -- and what are the complements of the commodity. For Mozilla and LibreOffice this might mean:
- Felix von Leitner recently suggested at heise.de that the German government could make earmarked donations to Mozilla so protect digital sovereignty: "Die Bundesregierung könnte der Mozilla-Stiftung zweckgebundene Spenden zukommen lassen."
While I agree with both the goal and concerns over spending the money on a "cyber agency" might dilute results, earmarked donations are a also a very painful device to use: The administrative friction between a donor and the foundation will imply a huge overhead.
Mozillas projects might be better off opening themselves to outside contributions and diversifying its contributions(2). And if there is indeed money in the German or European government to spend on strategic goals like digital sovereignty, tendering those to capable local providers with a crystal clear purpose will have much better outcomes. Both FSFE and OSBA might contribute starting points and help find suitable partners.
All of this might seem very local, but likely it is not: Mozilla should look globally into diversifying the contributions to their projects, even if it might reduce their control as sole maintainer of them. - LibreOffice needs to decide where it really wants to provide a commodity and what its complements are: Both in the dimension of online collaboration vs. desktop and enterprise users vs. home users. The space claimed for commodity should be broad enough to motivate non-commercial contributors and to allow to grow into new complements when they appear, but overextending will leave too little room for complements, products and ultimately users. When the space allocated to be a commodity is overextended, the project will downsize to be a project solely serving its most active contributors(3) leaving aside non-contributing users.
I see this responsibility at the board of the Document Foundation and there alone. It is elected for this as representatives of the community of contributors for exactly decisions like this.
Maybe not all of the dream is lost.
(1) Note that I am no expert on the history of open source nor do I know the internal workings and politics of all the open source projects, so there is unfortunately a lot of conjecture over the limited body of my own experience.
(2) This is where I might disagree with Michael Meeks' take on that.
(3) The Document Foundation receives significant donations from individuals compared to other open source projects. Michael Meeks has some numbers on the value of developer contributions in kind to compare them to and put them in perspective.
Originally published on 2020-09-20 20:49:56 on wordpress.