Last time we looked at the roots and reasons of the Free Culture movement. Now we’ll move on a little and look at the first of the Free Culture organizations – the Free Software Foundation and the GNU Project. Both organizations are focused solely on software, but are still significant, as we’ll see shortly.
In the early days of software development (circa 1970), software freedom was an assumed thing. Almost all software was distributed with source code. Source code is the human-readable and -writable form of a program, which is used when programs are created and modified. In order to be run, it must be translated into machine language, often in the form of a compiled program, which is not human-readable to the same degree. In these early days, the users of a piece of software were expected and encouraged to make and share changes and improvements. Computer companies made their money off the hardware; software was seen as a sort of “value-added extra” – something that made people buy the hardware but which was not, in and of itself, something that could be sold. People generally assumed that this state of affairs would never change, despite the warnings of people like Richard M. Stallman (hereafter referred to as RMS).
In the 1980s, everything changed. Companies started getting out of the hardware business and into the software business, inspired by the success of companies like Microsoft. Companies stopped providing source code to their software to users, and took legal action against those who shared or modified their programs. In this way, control over what could be done with a computer was moved to the hands of the software companies and out of the hands of the average user. A notable example of this is the AT&T v. Berkeley lawsuit, over a conflict between the owners of Unix and a “fork” of it that attempted to remain free. The “Berkeley Standard Distribution” won, but it was a near thing. Other court decisions during this period added fuel to the fire by, for example, ruling that users needed a license from the company to run software that they owned copies of, because running the software involved copying it into memory.
The GNU Project’s goal was to reverse this trend. Their initial objective was a complete, “free” re-implementation of “Unix”, a proven, portable operating system and software environment. The project quickly developed the “user tools” needed for a complete operating system – shells, shell utilities, text editors, and other basic programs. It was during this time that RMS developed emacs, the most powerful text editor in the world. An appropriate kernel took more time to develop, and when Linux was developed in the early 1990s, it was used as a stand-in for the full GNU kernel, which has yet to be completed.
Modern free software success stories include KDE, a complete desktop environment, the Linux and BSD kernels, the GNU and BSD operating environments, numerous programming languages, several relational databases, a large amount of truly innovative software, and the Apache project. The Apache web server, which Booman Tribune itself is running on, is the smallest and least significant contribution of the Apache project. More recent Apache developments, such as Cocoon, stand to change the way we write and think about software.
(Reference: History of the GNU Project)
The GNU Project and the Free Software Foundation are dedicated to the ideal of “free software”. Due to the inadequacy of the English language, what is meant by this is not immediately obvious. It does not, as many assume, refer to software without cost. Rather, it refers to “free software” in the same sense as “free speech”. The GNU Project recognizes four basic software freedoms that must be maintained:
- The freedom to run the program, for any purpose.
- The freedom to study how the program works, and adapt it to your needs. (Requires access to the program’s source code)
- The freedom to redistribute copies so you can help your neighbor.
- The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. (Again, requires source access)
Money can be charged for free software, but since users can redistribute your program freely, this must be done carefully. The usual business model is to charge money for extra services – new features, prompt service response times, continued development, that kind of thing. While this may seem limiting, many companies have made reasonable, though by no means excessive, profits by developing free software.
(Reference: What Is Free Software?)
RMS argues that free software is necessary for society to progress and develop, a goal that should be of interest to any progressive. He argues that it is necessary to take advantage of the ability of computers and, more recently, the Internet to reproduce, distribute, and access information. If the software you use is controlled by someone else, not only does it not always do what you need, but they can control your access to and ability to publish information!
(Reference: Why Free Software?)
In order to ensure that software they have written remains free, the GNU Project gave rise to the Copyleft Movement. This movement seeks to employ copyright law to develop licenses to better allow authors to share their creations. The most famous of these licenses is the GNU General Public License, or GPL. The terms of the GPL are very simple – you may do what you like with a program licensed under the GPL, but you must give others the same rights that you yourself was given. You cannot take a GPL’d piece of free software and make it proprietary without violating the license.
The GPL works and is distinct from End-User License Agreements because it sits on top of regular copyright law. Unlike EULAs, it does not attempt to take rights away from you. You always have your basic set of rights under copyright law, no matter what. However, if you wish to exercise additional rights – such as distributing a modified copy of the program – you are bound by the terms of the GPL.
(Reference: What is Copyleft?)
The GNU Project’s objectives – a computing platform based entirely upon free software, allowing for free sharing of information – are obviously of benefit and interest to the progressive community. While going against the interests of the content companies will have a cost, as Governor Dean discovered in the 2004 Presidential Primaries, I believe that the payoff is worthwhile.
The GNU Project is of interest to the progressive movement for one other reason – RMS is consistently right. He refuses to compromise on his ideals (an example we should all attempt to emulate!), no matter what the promised gain. He regularly makes startling predictions that are dismissed by the broader technology community, but which inevitably come true. And despite this (or, I contend, because of it), free software has enjoyed unparalleled success. Why?
To answer this question, let’s consider some more history. During the late-1990s, there was a competitor movement to the Free Software Foundation and GNU Project – the Open Source movement. This movement claimed that RMS’ focus on freedom was damaging to the movement to get access to and permission to alter software source. They insisted that his unwillingness to compromise on his principles, or his freedom-centric language, would scare off corporations, programmers, and users, and that a more friendly, less rights-oriented approach was necessary, instead of his impractical idealism. Over the years, the Free Software Foundation has flourished, and the Open Source movement steadily lost credibility and attention.
The Open Source movement failed because it was willing to sacrifice the values that lead to the creation of the Free Software movement in exchange for a perceived increase in acceptability and popularity. Towards this end, they approved many licenses that the Free Software Foundation condemned as non-free. Gradually, the licenses the Open Source movement approved of became more and more restrictive. Towards the end, they even approved many of Microsoft’s “shared source” licenses, which contain provisions that absolutely terrify me.
The Open Source movement also failed because their claims about acceptability and popularity proved false. Few companies, other than those that had no interest in compromise whatsoever, like Microsoft, were put off by RMS’ rhetoric. IBM and Novell, among many others, have adopted and embraced free software. Their primary businesses, as they had discovered, were not software – the original conception of software as a “value-added extra” or low-price product was correct. By attempting to sell software, they put themselves into direct, losing competition with Microsoft. Because of this, they lost nothing from embracing Free Software, and gained much. They also knew what to expect from RMS – even if they did not agree entirely with his goals, those goals were not directly harmful to them, and had remained unchanging for decades.
RMS also – very rightly – warned the community against depending too much on companies, even those like IBM that have embraced free software. So far, he has been proven right – Apple, for example, may be slowly moving away from free software, having taken what they needed from the community. He also predicted things like the “BitKeeper fiasco”, where a piece of proprietary software was used in the development of the Linux kernel, only to have its free-of-charge license pulled in a temper tantrum by the owner. Among his other predictions were many of the recent copyright abuses mentioned in Part I.
In conclusion, the progressive movement has much to learn and gain from the free software movement. They provide an excellent example of the benefits of holding on to one’s ideals, even when one’s erstwhile allies insist that those ideals are impossible, unpopular, unrealistic, and doomed. They also provide an excellent resource and potential ally in our fight for freedom, and are dedicated to ensuring that the tools necessary to share information and collaborate and organize online remain free-as-in-speech.
Next time: the Creative Commons and Lawrence Lessig, Man of Steel to Richard Stallman’s Batman!
Additional reading: Philosophy of the GNU Project. There’s lots of separate documents here, all of them relevant. Some will note that my stance on copyright does not agree 100% with RMS’ – this is based solely on my perception of the need to convince artists to release their works, and compensate them for those works. If alternative methods for those were developed, then my stance would closely parallel RMS’.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.