|
The GNU Project |
|
In his article on free software licensing, "Reverse-engineering the GNU Public Virus," (LinuxWorld, September 1999) Stig Hackvan seems to have filtered the facts through his political views: that the Free Software movement is "extreme" and impractical. I hope that readers will take his description of the Free Software movement, its views, and, above all, its practical methods, with several spoons of salt. He begins by berating me for using the word free to refer to freedom:
I wonder what other word he thinks I should use. Most languages have a common adjective for free-as-in-freedom which does not also refer to price, but English has none. Various alternatives have been suggested, but they all have problems of their own. A year ago, some people started using the term open source, but that too is flawed; people regularly misunderstand it if they don't know the official definition (http://www.gnu.org/philosophy/free-software-for-freedom.html). My views on freedom sound self-contradictory after passing through the Stig filter:
If this seems paradoxical, it shouldn't. Protecting essential freedoms is always a matter of restricting the actions that would deny them. Remember, your freedom to swing your fist ends at the tip of my nose. The Free Software movement aims to provide certain freedoms for all computer users, including the right to change a program, the right to redistribute copies, and the right to publish modified versions. The most effective way to protect these rights is to deny anyone else the power to take them away from you. I find the distinction between freedom and power useful for thinking about the ethics of political issues. Freedom is when you control activities that affect you most closely; to control activities that mainly affect other people is power, power to dominate others. When software users can change and share a program, that is exercising freedom. When software developers make a program proprietary, and place restrictions on the users, that is exercising power. The US Constitution doesn't fare much better in Hackvan's article. He writes:
The Constitution treats the last of these as a means to an end, not as an end in itself, as you can see from the words that are quoted from it. The article also repeats a widespread misunderstanding of the GNU GPL:
Strictly speaking, nothing we free software developers do can legally require others to release their code in any particular way. If someone has used some of my GPL-covered code in a program, and releases the program, I cannot make that person release the program under the GPL. I can, however, deny permission to release my code on any other basis. That is what the GPL does. If he has used a large amount of my code, he might decide to release the whole program under the GNU GPL, rather than taking out my code (which he is always entitled to do). This is how the GPL works, pragmatically, to encourage free software development. A few passages in the article show us where Stig Hackvan is really coming from:
The fact is, I'm more interested in defending your freedom and mine than in how software entrepreneurs feel. So I refuse to cede any important freedom to make them feel comfortable. (I do try to make them comfortable about using and developing free software, but not by sacrificing the ultimate goal.) Stig would willingly do so, because the freedom of people in general is not such a priority for him -- that is his basic disagreement with the Free Software movement. Naturally, then, he would disapprove of the GPL, or anything that protects our freedom from software entrepreneurs who would like to take it away. His real objection to the GPL is that it does what it was designed to do. But he could not write an effective article based solely on that. He needed to find other things to criticize, such as our firmness and idealism. In Stig's view, to be firm is to be inflexible. You can see how much it pains him to describe pragmatic compromises that we've made, such as the Lesser GPL. The difference between us and Stig is this: we compromise when that helps achieve the goal of free software, but we don't compromise the goal. In Stig's view, to be idealistic is to be ineffective. The Free Software movement is idealistic, but very effective: free operating systems exist because of our idealism. If you are using Linux, Linus Torvalds' kernel, you are most likely using it in conjunction with the GNU system. This combination, the GNU/Linux operating system, the subject of LinuxWorld magazine, exists because of the FSF's idealism. The system is the idealism of the GNU project made real. I've done business in the world of free software for 14 years now, ever since I began selling tapes of GNU Emacs in 1985, and I agree with Jamie Zawinski (as quoted in Stig's article) that free software and greed are not incompatible -- at least, most of the time they can coexist. But greed alone will not protect our freedom. There are occasions where defending freedom requires a special effort, an effort that requires a motivation beyond material gain. History shows that people who don't value freedom enough to defend it will tend to lose it. Fortunately, Eric Raymond's doctrinaire, almost Marxian vision of economic determinism is not realistic: history also shows that people who do care can defend their freedom, if they make an effort. To keep free software alive, we need many people to make small efforts, and a few people to make great efforts. Please join the Free Software movement, and help these efforts. Postscript
It is much wiser to talk about either patents or copyrights, and never try to talk about both of them at once. I also suggest avoiding the term protection to describe what copyrights or patents do. That is a propaganda term -- it views the situation from the point of view of the person or company that owns the monopoly, rather than the millions of others who are restricted by it. This is why publishing interests use the word so much; they know what message it conveys. See
http://www.gnu.org/philosophy/words-to-avoid.html
for more explanation of these topics.
Beowulf Linux Clusters Small scale parallel processing is becoming cost effective for single users with the advent of high performance commodity microprocessors, short haul high speed networks, and low cost GigaByte capacity disks. Migration of scientific computing demands from mainframe and supercomputers to workstations continues but is hindered by the lack of scalable system software to integrate available resources into useful systems. Movement from centralized computing to distributed heterogeneous systems of workstations, file servers, and high performance computers puts more capability in the hands of the scientific and engineering computing user but creates new bottlenecks in the total system that limits scalability and environment growth. File servers and interconnecting networks can become overloaded, constraining productivity and degrading overall system cost effectiveness. This is particularly true when large datasets are involved as is the case for many Earth and space science applications; especially those involving visualization as described above. To address this challenge requires modification to the balance of resources and the leveraging of industry investment in cost effective technology. Central to this advance is the requirement for an operating system capable of managing parallel processor, communication, and mass storage resources with individual user systems. The Linux operating system is a new robust and fully open Posix compatible environment available at no cost and with full system source code. It is an ideal base with which to support system software research and advanced development, leveraging industrial and academic research and investment. It is targeted to the single most popular architecture family and has an installed base of over a hundred thousand sites. Linux has received little attention, however, as the logical substrate for parallel processing environments. The ESS Program's Parallel Linux project is motivated by the opportunity of bringing inexpensive parallel computing to the end-user environment and there-by greatly reducing the source of bottlenecks currently prevalent in networked environments for scientific computing. The ESS Parallel Linux (EPL) will enable industry defined hardware and software standards to be integrated in resource ensembles that will move the operating point of data storage, access, manipulation, and visualization to the end-user terminal resulting in lower cost, greater performance, and better global system behavior. EPL will extend Linux by achieving the following milestones:
The EPL Project is intended to support such important ESS
application requirements as visualization and satellite terminal data
processing which will run on top of it. The goal of EPL is to perform
pathfinding research for the US parallel processing community by examining
resource requirements within the context of this new operating point and
providing demonstration systems that embody techniques capable of achieving new
levels of cost effective high performance computing. It is anticipated that key
elements of the Linux extensions making up EPL will be distributed to the
system vendors for direct incorporation in their products (protected by the Gnu
Public License) or as a template for techniques that can be ported to their
products.
|