jxself.org

Free Software And GNU

Jun 2011

You may have heard of "free" software before. One common belief is that it's free of cost. The majority of free software is available without cost, but "free" really refers to freedom not price. Specifically, the freedom to run, study, modify and distribute the software.

If you have all of these freedoms, then the program is free software. If not then the program is proprietary. Proprietary software is a dark alley. Only a select few can legally know the ins and outs of the program. If you can't run the program for any purpose that you want, if you can't study and modify the program so that it does (or doesn't do) whatever you want, then who is your computer really taking orders from? Certainly not you.

In addition, the license attached to proprietary software often says that you're forbidden to share copies with anyone else. If you can't legally share copies with your friends, what what does that say if you're forced to choose between obeying the license of the software or being a good friend and making a copy?

The developer would have you believe that the restriction to never share with anyone anywhere ever needs to be in place so that they can get paid, but there are ways for the developer of a free program to be paid and still give their users freedom. Since free software is about freedom and not price, this means that the developer of the program can charge as much as they like for the software as long as the user of the program receives those four essential freedoms. Anyone that you give a copy of the program to could also make a donation to the developer if they like the program and find it useful. The developer can also sell support contracts, and the users of the program can hire the developer to implement specific features in the program or make other changes. These are just a few ideas.

Free software does create a different economy. The difference is that the software remains under control of the users. With proprietary software, the users are dependent on the developer for bug fixes and other enhancements, who may (or may not) do what their users ask. The developer may also add anti-features that spy on the user or report information back to the developer. The developer also has the ability to change their policies at any time. As a result, the developer has control over the users and their computers. This is kind of control is unjust. The free software community believes that everyone needs these freedoms in order to have power and control over their computing.

The only way out of this is not to use proprietary software, and that's actually pretty easy. In the 1980's a man named Richard Stallman set out to create a free operating system for people to use and named it GNU, which is short for "GNU's Not UNIX" and he started the GNU Project to work on it. With this, Richard launched the free software movement.

While working on the GNU operating system, there came a time where almost everything was finished, except for one component: the kernel. A kernel is sort of the central component of an operating system. The GNU Project began working on their own kernel, which they named the HURD. While working on it, a man named Linus Torvalds came along and wrote a kernel of his own. He named that kernel "Linux." Originally, the kernel that Linus wrote was not free software but he later changed the license so that it was.

Developing an entire operating system from scratch is a huge task so Richard was always looking for shortcuts to take, trying to find some existing free software program that could be used so that they could get to a complete free system sooner. Once the kernel that Linus wrote was free software, Richard decided to take that kernel and fit it into that last gap in the GNU system. The resulting combination of GNU and Linux is the GNU+Linux operating system, although many (incorrectly) simply refer to it as "Linux."

In that moment it was possible to run a computer in freedom, but that only lasted for a few years. Linus Torvalds later decided to allow proprietary software into his kernel. In addition, people would package up GNU and Linux into a "distribution" that people could easily download and install on their computers. That's good, because it makes free software more accessible to the world, but the developers of these GNU+Linux distributions decided that they could become more popular if they also added proprietary software into the mix. While that may be true, it also meant losing sight of the original goal. The goal of the GNU operating system was to make something that people could use in complete freedom, not 95% freedom or even 99.9% freedom. The world already had proprietary operating systems that people could use if they wanted to so creating another one wouldn't be improving the situation, and doing so certainly wouldn't help people escape the control that proprietary software gives the developer.

There were also people that didn't believe in the message about free software and how proprietary software gives the developer unjust power over their users. They started an offshoot called "open source" that focuses on the practical benefits of free software with questions like "What can I do with it?" or "How powerful or reliable is it?" etc. They don't view proprietary software as something unethical, only less ideal since they can't study the ins and outs of the software on their own and try to make it technically better. As a result, the open source movement focuses on something different than the free software movement.

Fortunately, there are some who still believe in the original message and have stepped up: There are people working on a project called Linux-libre, to liberate the Linux kernel. They have a modified version of the kernel with all of that proprietary software stripped out. In addition, other people decided to create their own GNU+Linux distributions that don't contain any proprietary software at all. The GNU Project maintains a list of these completely free GNU+Linux distributions on their website. This makes it very easy to get started using free software. Today, there are thousands of free software programs available which let millions of people the world over have control over their computing.

If you want to learn more about free software, Richard Stallman has an extensive travel schedule. If you miss him, locals will often record his speeches. You can also visit your local GNU+Linux User Group. The free software community is very welcoming to computer users looking to jump ship from proprietary software. You can also attend a free software conference. Every year, the Free Software Foundation holds an annual meeting called LibrePlanet in Boston, Massachusetts. There are also other free software conferences around the world.