What is FOSS?
Free software is any software that is free as in freedom (libre). The Free Software Foundation (FSF) considers a piece of software free if it gives these 4 crucial freedoms to its users, following their official definition:
- 1 The freedom to run the program as you wish, for any purpose.
- The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this.
- The freedom to redistribute copies so you can help others.
- The freedom to distribute copies of your modified versions to others. 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.
As evident, the free software movement is a social movement rather than a set of basic guidelines for software development. It treats all software not as property that can be hoarded, but as shared human knowledge for everyone to enjoy.
Open Source Software
The overwhelmingly popular term free and open source software (FOSS) merges two similar yet different terms into one, causing confusion and ambiguities on the freedoms of the user.
“Open source software” is another term for a similar movement started in 1998, defined in a document called “The Open Source Definition”. However, contrary to the free software movement, open source software is not a social and ethical movement, and is instead a development methodology focused on public collaboration. As such, it has fewer restrictions on what constitutes it and is a superset of free software.
In their essay “Why Open Source Misses the Point of Free Software,” the Free Software Foundation identifies three core differences:
- Some open source licenses are too restrictive to be considered free. For example, Open Watcom prohibits making private modifications.
- Trademarks may make the programs impossible to distribute. For example, you technically cannot distribute modified versions of the Rust compiler under that name due to trademark laws.
- Criteria for open source are concerned solely with the source code.
The third point in this list is where the main problem in open source software stems from, which the FSF calls tivoization. A device running open source software can be made in a way that it verifies the signature of the software to block different executables from running, violating the freedoms 1 and 3. For more information on tivoization and DRM, see the FSF’s Defective by Design campaign.
-
The reason they are numbered 0, 1, 2 and 3 is historical. Around 1990 there were three freedoms, numbered 1, 2 and 3. Then the FSF realized that the freedom to run the program needed to be mentioned explicitly. It was clearly more basic than the other three, so it properly should precede them. Rather than renumbering the others, they made it freedom 0 (https://www.gnu.org/philosophy/free-sw.html#f1). ↩