Copyleft communism and the innovation it facilitates

In my prior post, I remarked about the amusing case of tech libertarians who fashion themselves self-made geniuses despite the fact that they rely heavily upon the communistically developed free open source software (Linux, GNU, PHP, MySQL, HTTP servers, etc.) that form the foundation of the entire modern web and app economy. I want to elaborate on that here.

Most free open source software was released under the GNU General Public License (GPL). This was somewhat jokingly referred to as copyleft rather than copyright. I say that this ecosystem of software and the community that formed around it was essentially communistic because, under these licenses, anyone who created derivative works from the source code found in the GPL ecosystem was and still is required to share the product of their labor with the rest of the community. Whereas copyright is aimed at excluding everyone else from using one’s product (here code), copyleft is aimed at preventing anyone else from excluding people from their product. When you use copyleft, you aren’t just sharing your code with everyone; rather, you are requiring everyone who uses it to also share their code with everyone under the same terms. The license acts as a viral contagion that progressively swallows up more and more code into the communist ecosystem.

The viral nature of these licenses, hotly complained about in some circles, made it such that, in theory at least, as the body of GPL software grew, it would become harder and harder for new coders to actually exclude what they produced. Because the GPL software was free and very good, decisional dynamics would mean they’d end up using existing GPL software as a starting point for their projects and modify its source code for their own ends, rather than creating everything from scratch (for an example of this, see Android from Google). This would mean that whatever they produced would be a derivative work that they were required, under the terms of the GPL, to share back to the community. So, it truly is a kind of self-reinforcing coding communism.

It turned out to be a wildly successful strategy, at least among software used by the development community (such as the software that runs our modern web and app services). By making the software free and open source, everyone who was interested could participate and make changes. Tens of thousands of competent hobbyist eyeballs were able to spot problems, suggest and implement improvements, and in a kind of evolutionary manner, create really high quality, free software. What’s more, the ever-growing body of high-quality, free software made outside proprietary entrants basically impossible. Would-be proprietary efforts simply couldn’t compete with the free open source alternatives, and open source programmers could usually reverse-engineer any must-have feature proprietary software companies put out.

Not only did this communistic ecosystem of software beat out proprietary competitors, but it has also had the effect of dramatically reducing barriers to web and app innovation. The source code is already there for you to innovate off of, if that’s your thing. But more importantly, because the software that runs web stacks is free, it costs almost nothing to create a new service with them. If the software that comprised modern web stacks was proprietary, not only would they be less flexible to use and modify, but they’d be super-expensive. There’d be extraordinary cost barriers to actually putting out a new website or app service. This would be especially prohibitive for the kind of in-the-dorm-room experimental products that people really idolize. Those products are only able to be realistically tried out in the first place because of the nearly free and frictionless development environment created by free open source software. Put simply: if you had to shell out, say, $3,000 to buy licenses to web stacks, a lot of web services people try to float out there would have been dead before they even started.

So, in this interesting coding niche, it’s actually been the case that a kind of forced-sharing communism has been an enormous boost to innovation. There are decent arguments for why this is a truly niche thing. After all, code is infinitely shareable at almost no cost, which is not true for most other things. But nonetheless, we had with free open source software a movement hell bent on creating a communistic ecosystem of software that was both successful and turned out to be indispensable to the enormous innovation we are now seeing in web-based, app-based services.