Free and open source software projects are in transition (and some links)
These two links have brought to mind an issue I’ve been thinking a lot about.
The first, Amy Hoy’s post, points out that the tech bubble—the one that has been kept inflated over the past sixteen years with low interest rates, non-existent antitrust regulation, and a legal environment for tech that, in the US at least, has effectively been a free-for-all—is now over. The incestuous startup ecosystem that largely consisted of over-funded bullshit companies buying services from each other is done. The industry’s ability to command eye-watering exits–IPOs and acquisitions—for money-losing companies with no realistic path to profitability, has been limited by increased scrutiny from authorities on both sides of the Atlantic and by increased scepticism about the promise that tech will eventually deliver magical profits.
The tide is going out and people are slowly realising that the only companies that make real money in tech are the monopolists or quasi-monopolists. A small group of multinational corporations have each locked down their user base—control every aspect of their segment of the market—and are now abusing that position to extract revenue at the expense of other companies in tech and the economy in general.
In the second link Zach Leatherman writes about some of the changes that are taking place in Eleventy, the open source project he runs. Development on the project used to be funded by Netlify, but they seem to be dialling down their investment in open source, so Zach was forced to reassess the path that the project was on and find new ways of keeping it sustainable.
Eleventy is a nicely structured piece of software that I’ve used in a few projects myself, so I’m glad to see the partnership between it and CloudCannon. The two projects look very complementary.
They also plan to simplify the project and keep it focused on what it does well, and this touches on something I’ve been thinking about for a few weeks, ever since I read a conversation on Mastodon between Zach and Jim Nielsen on Jim’s blog post “Language-Level Toll Roads”. And that blog post makes a bunch of good points (emphasis original):
I think maybe what I’m trying to put my finger on is this contrast between open source foundations with proprietary features on top, vs. open source foundations with proprietary features built-in — and the tension and competition that will take place between the two.
I was trying to figure out ways of articulating the tension the relationship between free/libre/open source software (FLOSS) and the economic environment it exists in when I realised that FLOSS created the environment. Modern tech only exists because of free and open source software.
Back in the ancient days—in the before times when I first made websites—the tech world was predominantly closed source. The “dot” in dot-com were closed source servers such as those by Sun Microsystems (years before they caught the open source bug). Browsers were closed. Operating systems were closed—for the most part. The tools were largely closed. Even many of the popular programming languages used, such as ColdFusion or Java, were closed. For most users, when they visited a website, the entire stack was end-to-end closed. Database, server, browser, and operating system.
That took a long time to change, but now the core computing experience—browsing the web—is predominantly based on open source:
- Server operating system
- Database
- Server language
- Server framework
- Client operating system (Android, even Apple’s OSes have substantial OSS components)
- Client side language
- Client side framework
- Browser
Even in the native app domain, most of the frameworks people use to create cross-platform apps are open source.
A majority of the value created by modern software ultimately comes from free and open source software.
From this perspective most VC investments aren’t about creating value but about strip-mining FLOSS projects and communities. The scale is for extraction.
The tension is that these investors don’t just want to capture this value for themselves, they want to extract even more value from the communities surrounding the projects.
That’s why popular frameworks often start to spawn what Jim described as built-in proprietary features. One example is the key-value service that is being baked into the otherwise excellent Deno project. Another, more subtle example, comes from Eleventy itself: Eleventy Edge.
There isn’t anything inherently proprietary about Eleventy Edge. In theory, there are a few “edge computing” services that should be able to support it, but in practice, the company that employed the project lead at the time and the only company actively funding the feature, is going to be the only one whose service is reliably supported.
This is the reason why I’m excited about the partnership between Eleventy and CloudCannon and the project’s refocusing. It isn’t that the project will get simpler to use (though I’d be happy if it does) but the complementary nature of the collaboration creates a dynamic where every part of the project benefits the community as a whole, in a non-extractive way.
The extractive dynamic between a tech company and financially dependent open source projects is incredibly common and few handle it as well as Zach seems to have, both during his time at Netlify, and with the decision now to rejig things. Netlify’s dominance over the project could have been lethal—making it incapable of surviving without Netlify’s financial support.
The transition that’s taking place is because with less money floating around, the tech industry is retrenching and in many cases that means they’re either not funding FLOSS any more or that they’re ramping up their attempts to extract value from the community. Companies invest less in FLOSS and want to take more of the value created.
Simultaneously, the increased popularity of language models in software development, themselves a blatant strip-mining of FLOSS code, likely has the effect of deflating the size of the communities themselves. Why use an open source project when you can get a language model that’s trained on that project to rehash it and inject it into your code? Why give somebody credit for the lines of code you’ve adapted for your own project when you can get a language model to whitewash it and let you claim it as your own?
To me, it feels a bit like the relationship between the industry and FLOSS communities has switched from being somewhat productive and occasionally abusive to being outright looting.
Finding partnerships that are genuinely mutually beneficial, which is something I hope Eleventy has managed, is one path out of this. Another is for those working in tech to continue to try and find ways of making community-supported projects more sustainable.
But I’m worried that many free and open source projects, small and large, are about to have a pretty hard time, and with them their communities.
I don’t really know how best to mitigate that, and I’m kind of hoping that my sense of unease is just unfounded.
Links #
Artificial Intelligence #
- ’Eschatology › The “Promise” of “Easier” Programming’. “It’s like saying we won’t need writing and literature classes any more because spellcheck exists, a category error.”
- "Worldcoin: a solution in search of its problem"
- ’“Ensuring Safe, Secure, and Trustworthy AI”: What those seven companies avoided committing to | by Emily M. Bender’. “The companies say they’ll try to mitigate some pollution down the road, but do not wish to do anything about the toxic waste they’re currently spewing.”
- ’“AI” content and user centered design’. “There are benefits to one-click-content-creation for organisations. But I don’t see how end users could benefit, at all.”
- "The ChatGPT revolution is another tech fantasy"
Software development #
- "Pull Requests are cake or puppies - Textual"
- "Axess Lab | Toggles suck!"
- "Weizenbaum examines computers and society - The Tech". “I think the computer has from the beginning been a fundamentally conservative force. It has made possible the saving of institutions pretty much as they were, which otherwise might have had to be changed.” Must-read of the week. A smart and engaging interview with Weizenbaum of Eliza fame.
- "AI Does Not Help Programmers". “What use do I have for a sloppy assistant? I can be sloppy just by myself, thanks.”
- "Blockquotes in Screen Readers — Adrian Roselli"
Other reads #
- "Cis woman shares relentless transphobic attacks on her gender"
- "Shakespeare Serif – an experimental font based on the First Folio – Terence Eden’s Blog"
- "Mastodon is easy and fun except when it isn’t - Erin Kissane’s small internet website"
- "Nobody cares about your blog."
- "Does writing really have to be so solitary? — Chocolate and Vodka". I’ve struggled with hyperindependence in the past so I made deliberate effort to break with that and find people to help me out on my ebooks. It’s hard but rewarding.
The best way to support this blog or my newsletter is to buy one of my books, The Intelligence Illusion: a practical guide to the business risks of Generative AI or Out of the Software Crisis.