Software Liberalism
I publish stuff and let others use them under certain terms. This is not a particularly unusual thing to do. I've even formalised these under a licence attached to the works I make. This is, generally speaking, an acceptable use of intellectual property (as flawed as the concept is, though this is not that essay). Such terms can be understood in a general sense to be free licensing.
However, there is another, more specific definition of what a free licence is. A work is only considered to be free if it grants what is dubbed as the Four Freedoms.
- The freedom to run the program as you wish, for any purpose (freedom 0).
- The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help others (freedom 2).
- The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.
The world of free (and open-source) licensing has no doubt had a strong impact on software. Many of the greatest programs are FOSS, like Linux, MediaWiki, and Firefox. These freedoms were great in the context they were written in.
This, however, falls apart modern world. Today power lies largely with a few large corporations who own most of the world's infrastructure. A world where the software-as-a-service model is not just widespread, but rather the entire platform. The freedom to run and distribute software implicates the freedom to exploit with it.
This is of course no fault of free software. The common licences were written in an age of floppy disks and perpetual licences. They could not have anticipated such a world back then. But it requires a re-evaluation of what "free software" actually is.
The Server Problem
Free software assumes that the user is, in some meaningful sense, in physical possession of the software. You get a disk, you put it in your computer, and you are free to do with the code as you want. This model made perfect sense in a world where software was a good that could be carried around between computers.
But we no longer live in that world. Since the 2000s, what we call "software" has since evolved into a service. Code running on someone else's machine, bound not by a licence but by a terms of use. In this world, the freedom to run and modify software is but a theoretical idea, because it is not you in ownership of the program. This is what I call the server problem.
A common solution in response to this is to "just self-host". Which is, to an extent, workable. I self-host. There is value in self-hosting software on your own hardware. However, this option simply is not available to most people. A lot of things need to go right to self-host: technical literacy, stable internet, spare hardware (or the money to buy some), and a lot of time. It is an individualist answer to a collective problem.
This also does not solve the issue of labour. Free licensing does not prevent powerful institutions from scooping up good software, deploying it on their server farms, and extracting all the value of it. The user is free to run the program on their own laptop, but the corporation is just as free to run it on their service, backed with a massive workforce and enough money to displace the original developers behind the program.
This is a fundamental problem of free software's notion of freedom. You are theoretically always able to run your own private (or public) service for your needs, but only in the same way you are able to build a factory in your backyard. And that's assuming you even have one!
Ideological Fanaticism
yap about redis here