Is Open Source A Public Good?
Last month Andrew and I visited both coasts of the US to talk about the sustainability of open source software. It was great to see such a wide and diverse group of people willing to bring their thoughts and experience to bear upon this problem. With so many now engaged I think it’s time to start picking at the detail and throwing some ideas about.
Why do we need sustainable open source software? My previous posts and very many others have established that not all open source projects are equal, that a small number of them keep us warm, keep us airborne, keep us safe. And what’s wrong with the status quo? Open source is a philosophy encapsulated in a licence. That licence says much about the code and your rights over it. It says you can use it, copy it, build upon it and redistribute it. That’s enough to protect us, right? I say ‘nope’.
A project is much more than its code. It’s also the processes and tools that are used to manage, review, accept, merge and distribute contributions. For infrastructure-type projects the distribution channel is almost as valuable as the project itself. While cost of transferring from one source for a project to another might be small for an individual developer or organisation for the ecosystem as a whole it can be very expensive indeed.
What we’re talking about here is bus-factor: the number of people that would need to be taken out by an errant mode of public transport to destroy a project’s ability to function and be available. In my mind it is the single most crucial factor in the sustainability of an open source project. It demonstrates just how important it is to support and develop existing project communities over code.
It also demonstrates how dangerous it is to consider these projects a public good. While the code itself might be non-excludable and non-rivalrous the community is most certainly not. As we have seen, considering them to be two separate things will be costly in the long run.