What is Free Software?
Published by Arun Isaac on
Tags: freesoftware
This is a republication of an introductory article I wrote for the Issues of Concern, a newsletter run by Concern, a left leaning students' political organization in the Indian Institute of Science, Bengaluru. This article is mostly a paraphrase of the philosophy pages of the GNU project in an attempt to explain what free software is to the average Issues of Concern reader. Many thanks are due to Raghunath Joshi for editing and improving the article.
Free software refers to software that respects users’ freedom and community. It means that the users have the freedom to run, copy, distribute, study, change and improve the software. Thus, “free software” is a matter of liberty, not price. Here, “free” is used as in “free speech,” not as in “free beer”. A program is free software if the program’s users have four essential freedoms:
Four Freedoms
A program is free software if the program's users have the four essential freedoms1:
- Freedom 0
- Freedom to run the program as you wish, for any purpose
- Freedom 1
- 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.
- Freedom 2
- Freedom to redistribute copies so you can help your neighbor.
- Freedom 3
- 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.
Why not proprietary software?
Proprietary software tends to have malicious features that give the developer unjust power over its users2. For example, Microsoft Windows has a universal backdoor through which it is possible to remotely enforce any change in a user's computer. In Windows 10, this backdoor is no longer hidden, and all updates have been made mandatory and forced.
Proprietary software also enables censorship and the creation of jailed devices. For example, the tech corporate giant Apple censored an app that reports on US drone assassinations. Whether or not the political causes that Apple supports are justified or not, proprietary software puts these companies in a position of unjust power over a helpless user and should not exist.
Digital handcuffs in proprietary devices and software – such as Digital Restrictions Management (DRM) locks over e-books – enforce arbitrary restrictions on sharing as well as the use of audio, video and other media in the name of copyright protection.
This practice has even entered the world of physical devices. For instance, the automobile giant Renault introduced a modification in the design of their batteries which allows them to remotely prevent the battery from charging. Such power over users' devices is unacceptable, and has potential for misuse by unethical corporations and authoritarian governments.
Other than such intentionally introduced bugs and/or backdoor channels, many proprietary software have been found to contain unintentional bugs and insecurities in their code that have possible grave consequences. For example, vulnerabilities have been found in hospital drug pumps that can be misused by crackers to administer fatal does to patients3.
Even though all non-trivial software have bugs, the developers of proprietary software often deny their existence or even brush them aside in the fear that it would tarnish the reputation of their firm. Even if users of these software come to notice the bugs, they are helpless in fixing them. On the other hand, any bugs in free software can be fixed quickly because the entire source code is made available for anyone to scrutinize, report and/or fix the bugs themselves.
How to make money with free software?
There are a lot of different ways to make money from free software. Many companies use the available free software, build on it to develop an advanced or modified custom software and sell it at a price. For these companies, free software libraries and programs are valuable resources from which to build on, without having to pay for restrictive proprietary licenses. On the other hand, companies like Red Hat make free software, but IT services for those software are provided for a price.
Many free software projects such as VideoLAN Client (VLC), Debian GNU/Linux are community run non-profits and depend on donations. Some non-profits such as the Free Software Foundation also get a part of their revenue selling hard copies of software manuals, books, and other promotional gear. Projects such as WordPress support themselves by providing hosting services for their software for a price.
Free software is extremely useful for budding startups, even to those that make proprietary software. Even web giants such as Google and Facebook heavily utilize the available free software to build their services. In fact, these giants could never have existed in the first place without free software. While it is good that such web service providers have their freedom, it is much more important that all computer users have their freedom too, and the latter is a state worth promoting and working towards.
Is competition always better? 4
The paradigm of competition is analogous to a race: by rewarding the winner, we encourage everyone to run faster. When capitalism really works this way, it does a good job; but its defenders are wrong in assuming that it always works this way.
If the runners forget why the reward is offered and become intent on winning, no matter how, they may use other strategies to win - such as, attacking other runners. If the runners get into a fist fight, they will all finish late. Proprietary software is the moral equivalent of runners in a fist fight. The only referee we have, to settle such fights, is the government which does not seem to object to fights and just regulates them – “For every ten yards you run, you can fire one shot”. Ideally, the government ought to break up the fights, and penalize runners for trying to fight.
Free software or open source software
Free software is often popularly called open source software. "Open source" is a depoliticized term that takes the focus away from larger political and ethical issues of software freedom. Supporters of "open source" generally focus only on the improved quality of software developed through public collaboration and ignore the issues of freedom concerning software. This results in a reduced awareness of the importance of software freedom, and in the consequent loss of that freedom. Hence it is essential to use the term "free software", and not "open source".
Is free software communist?
There are people with a wide variety of political inclinations – capitalist, communist, anarchist, etc. – in the free software movement. But, the philosophical underpinnings of free software are by no means limited to or applicable only to any one of those ideologies.
In today's oligopolistic and monopolistic capitalism, it is easy to forget that a healthy capitalism needs perfect competition where individuals are free to enter the market with their own products. Proprietary software prevents healthy market competition by establishing monopolies. On the other hand, free software allows any small software company in some little town to quickly develop their own products without having to start from scratch. Thus free software actually empowers individuals and creates a healthy market.
Image Credits
- Meet the free software gang by the Free Software Foundation, released under the Creative Commons Attribution-NoDerivs 3.0 Unported license
- Four freedoms by Christian Noguera, Valentin Pasquier, Richard Stallman, released under the Creative Commons Attribution 3.0 Unported license
Footnotes:
Source: The Free Software Definition published by the Free Software Foundation
For a large collection of documented malicious features, see https://gnu.org/philosophy/proprietary.html
Crackers are people who break computer security, often for malicious purposes. Popular media use the term "hackers" to refer to such people, but that is a misunderstanding of the term "hacker". To know more about hackers and hacking, see Richard Stallman's On Hacking
This section is reproduced almost verbatim from The GNU Manifesto