Free/open source has been on my mind lately – more than usual.
(FOSS or OSS for short, the distinction matters, a lot, but for the purposes of this post the two are similar enough to lump together.)
This was triggered by reading a couple of posts the other day:
- Tara Tarakiyee’s Is the Open Source Bubble about to Burst?.
- Ben Werdmuller’s post that links to it but adds his own thoughts.
I have been worried about the state of FOSS in general and having read these two posts is a good an excuse as any for getting the rudimentary outline of the worry out onto the page.
Short version: my mental model of FOSS is that it’s a function of industry and labour surplus:
- Industry. The software industry has extremely high margins (products that are both non-rivalrous and non-excludable will do that) and historically easy access to investment because of both low interest rates and the pervasive belief among the financial class that successful tech companies grow exponentially for extended periods.
- Labour. Even though coders come from varying backgrounds, once they have a career many, if not most, become relatively high income middle class with significant spare time. A non-trivial number of coders in California also have moderate wealth from being secondary or tertiary beneficiaries of industry liquidity events which lets them work on FOSS as much as they want. (This is what keeps a surprising number of FOSS projects afloat.)
Industry surplus also leads to labour surplus in that companies let coders work on related FOSS projects during work.
The derived FOSS surplus generates billions, if not trillions, of dollars of value for the economy and most of the costs – cost of creation, opportunity cost, and the cost of OSS competing with your more lucrative proprietary products – is absorbed by the makers.
We’re in a period where the surpluses that the FOSS surplus is derived from are decreasing:
- High interest rates decreases available investment.
- Less investment in any software that isn’t “AI”, which itself doesn’t really do real open source. (I know of exactly one LLM that both has openly licenced code and has documented the training well enough for it to be deterministically replicated. That might qualify as OSS if you squint. The rest isn’t even in the ballpark.)
- COVID growth reverting to the mean triggering a reassessment of tech industry growth.
- Industry management pop culture has fixated on lay-offs as a magic cure and increased coder unemployment leads to less time for OSS. And OSS participation doesn’t really improve your chances of employment any more, unless it’s adjacent to the decidedly non-free generative model sector.
- OSS burnout. Very few FOSS projects are lucky enough to have grown a sustainable and supportive community. Most of the time, it seems to be a never-ending parade of angry demands with very little reward. When the software labour market was growing steadily, burned out maintainers often got replaced by fresh-eyed graduates or coders who relied on the project at work.
- Companies in many sectors are cutting costs after years of overspending.
As the surplus decreases, the costs associated with FOSS participation become less tenable to most organisations.
- Why compete with AWS or similar services that will offer your own OSS projects at a dramatically lower price?
- Why subsidise projects of little to no strategic value that contribute anything meaningfully to the bottom-line?
- Why spend time on OSS when other work is likely to have higher ROI?
- Why give your work away to an industry that treats you as disposable?
Anecdotally, F/OSS also seems to be losing users:
- There’s less funding for non-AI software startups, who are usually very heavy OSS users.
- Some are reaching for LLM-generated code before they even look for an OSS project, both disconnecting those projects from opportunities to grow a sustainable community and nullifying the strategic advantage of having made an OSS solution for a problem. Note that the models are originally trained on that OSS.
- People who are unemployed or jaded by the software industry have fewer side projects, because – let’s be honest – there are healthier hobbies available.
Best case scenario, seems to me, is that Free and Open Source Software enters a period of decline. After all, that’s generally what happens to complex systems with less investment. Worst case scenario is a vicious cycle leading to a collapse:
- Declining surplus and burnout leads to maintainers increasingly stepping back from their projects.
- Many of these projects either bitrot serious bugs or get taken over by malicious actors who are highly motivated because they can’t relay on pervasive memory bugs anymore for exploits.
- OSS increasingly gets a reputation (deserved or not) for being unsafe and unreliable.
- That decline in users leads to even more maintainers stepping back.
Some of this is an inevitable correction. The JS npm
ecosystem, for example, is almost certainly unsustainable in its current form and has coasted on years of overinvestment in useless startups and Microsoft’s blatant attempts to own the entirety of software development.
But a “correction” is still destructive if you are unknowingly relying on an unsustainable system.
We don’t yet know which parts of the FOSS system is sustainable, and which is coasting on the hot air of startup funding, the post-acquisition savings of startup employees, and Microsoft’s belief that, currently, paying for all of this shit helps them make money somewhere else.
And because we don’t know, it’s hard not to worry about all of it.