To begin with, it has to be understood free software is free as in free speech. When we say software is free, we speak of liberty and the rights of the user. Ironically, price isn’t even an issue in free software; there is generally no stated requirement for free software to be free of charge – but this is simply moot as we will show.
For software to be free, it is universally accepted that users must be granted unalienable four rights.
- The freedom to run the program for any purpose
- The freedom to study how the program works and adapt it as desired.
- The freedom to redistribute copies to other people.
- The freedom to improve the program and release these improvements to the public.
Immediately, there are stark distinctions from commercial software which may possibly permit the first right but certainly none of the others. Additionally, the rights have necessary implicit preconditions and these are powerful despite their subtlety. To study how the program works, and to adapt it or improve it means the source code must be freely available. If the source code is held back then these rights cannot be taken up.
And, returning to the issue of price, free software could be charged but there’s no point: as anyone has the right to redistribute it, it will always be available at no charge somewhere. In practice, free software is generally only charged for the effort and materials used in making and sending physical media.
In fact, as the first right grants the freedom to run the program for any purpose, it is important to note free software must be available for commercial use just as much as it is available for personal use. If the software developer stipulates they do not want their program to be used in some way then this first right has been violated.
The GNU GPL version 2
The best known free software license is that from Richard Stallman and the GNU project, the General Public License (GPL), released in 1991. Much GNU software is covered by version two of this license. Like most any license or legal document, the GPL is lengthy and verbose. It’s not uncommon for people to skip past the license when installing software, merely accepting and proceeding. Consequently, although the GPL is widely touted it’s possible end users may not appreciate what this license allows them to do. Conversely, a software developer should understand fully what this license entails when opting to release their apps under it.