About Free Software

Free software is software that you can study, change and share. In particular, it allows you to study a program's source code, the human-readable instructions that are turned into machine instructions. Without that ability, you never really know what your computer is doing when you run a program. One thing it could be doing is invading your privacy, which is trivial to achieve and to hide in non-free, i.e. proprietary software. People who write viruses can often invade a computer's defenses to access private data, including emails, documents, photos, passwords and credit card numbers. If they have to maneuver their way onto a system, think of how easy the job becomes for a programmer to spy on someone when the user runs proprietary software by choice. The creators of non-free software never tell you what they are actually doing on your computer, since they never show you the source code.

Free software avoids this inherent vulnerability by making a program's source code available for peer-review, to examine what a free program does. If you don't know how to read source code, there are many other programmers who can. The ability for them to check the integrity of any free program written by another person builds a network of trust. If you install a program through a free operating system's trusted database of free software, you greatly limit the chance of installing and running malicious software on your system.

What if the source code is available, but you're not allowed to copy it? In that case, you cannot help your neighbor, so it's not considered free. Copying programs and files on computers is trivial, so when someone puts unfair rules and restrictions on your ability to copy a program, it is for their interest only. There are those who choose to break the law in order to share proprietary software with other people. This isn't a good idea since it puts both parties at legal risk and encourages the use of proprietary software. Thankfully, you can share all free software.

Since free means freedom-respecting, and not gratis, i.e. free of charge, you can sell free software. While a programmer's customers may choose to distribute copies of their software at little or no cost, there are many people who are successful at selling free software, and/or technical support for it, like Red Hat, and some individual programmers.

Importantly, free software is modifiable. This is a huge deal, actually. If a programmer, or the company s/he works for wishes to limit users, through vendor lock-in, or any other digital restrictions, then they may do so easily, if the software is proprietary. That kind of software is called "defective by design". If it is free software, then any other programmer may choose to remove those limitations, and share the improvements with the rest of the community. Changing what a program does becomes very hard when the source code is not available, so having access to it is an essential software freedom. Sharing free source code allows programmers to collaborate, or take a project in a new direction, to empower each other and the entire community.

To ensure that all computer users now and in the future share this empowerment, the best type of free software license to use is "copyleft". Basically, it's a copyright "hack" which allows you to share your copy of a program with other people, as long as you pass on to others the same freedoms that were given to you. This stops someone else from taking a free program, then trampling people's freedoms by distributing it as a proprietary one.

Software freedom is wonderful. Some people haven't switched to using all free software yet because there isn't a clone for every non-free program that exists. However, there's not much missing from fully-free "GNU/Linux" operating systems, and the list of missing features is growing smaller each day. So I encourage you to give free software a spin. Enjoy your freedom. :)

Posted: 13 Jun 2012

Author: Andrew Engelbrecht