BY many accounts, he is one of the best programmers in the United States. His going rate for consulting is $200 an hour. But these days, Richard M. Stallman spends all the time he can in a crowded, 130-square-foot office in Cambridge, Mass., writing ``free'' software. To Mr. Stallman, ``free software is a matter of freedom, not price.'' Copies of his programs sell for $150, but a person who buys one is free to do almost anything with it, including making duplicates to give away or sell. This stands in stark contrast to the rest of the software industry, where restrictive software licenses are the norm.
Most programs today are purchased ``object-code only'' - in a form that can be used by computers, but is virtually useless to humans who would like to take the programs apart, see how they work, and possibly make improvements. Software companies keep their ``source-code'' - the actual text their programmers write - closely guarded secrets, or sell it for tens of thousands of dollars.
Nobody appreciates how useful source-code can be more than computer programmer Stallman.
In the late 1970s, when he was a staff member of the Massachusetts Institute of Technology's Artificial Intelligence Laboratory, he and other programmers took the source-code for the lab's central graphics printer and added a slew of new features.
``Whenever there was a paper jam, it would send a message to everybody who had a job waiting,'' Stallman recalls. ``When it finished [printing], it would notify you.''
But when the lab upgraded its printer, the new machine was supplied with a driving program that was object-code only. ``We wanted to put those features into the [new] program, but we couldn't, and Xerox wouldn't,'' Stallman says. ``We didn't have the source-code, so we had to suffer with paper jams that nobody knew about.''
To add insult to injury, Stallman ran across a programmer at Carnegie-Mellon University who had a copy of the source-code, ``but he refused to let me have it, because he had signed a nondisclosure agreement,'' Stallman says.
Such agreements are common in the computer industry. Stallman believes they stifle innovation by forcing programmers to constantly rewrite parts of programs that others have already written, and by preventing people from fixing problems in programs that they use. ``Every such agreement is a betrayal of society for personal advantage,'' he says.
Five years ago Stallman, known to his associates simply by the initials RMS, decided to change things: He started Project GNU, whose herculean task it is to write a version of the popular Unix operating system for which everybody would have free and open access to the source-code. (GNU stands for GNU's Not Unix.) Three years later he set up the nonprofit Free Software Foundation, whose five directors, four paid employees, and hundreds of volunteers around the world are helping with the task.
Once the project is finished, he says, people won't have to sign license agreements that make it a crime to share programs with their friends.
The first GNU program, a text editor called Emacs, was made available in the spring of 1985. Since then it has become a de facto standard editor for high-performance computers worldwide, and is now included as standard equipment by a number of manufacturers.
In many ways, Stallman's Emacs embodies his ideals of what software should be: Emacs is powerful, yet easily modified by programmers who wish to customize it to their own tastes.
Stallman stresses that his software is not ``public domain.'' Every line of the program is covered by a software license that has one nonnegotiable rule: No one may incorporate it into a proprietary computer program or distribute it without making the source-code available.
Today, GNU Emacs is used by hundreds of thousands of people around the world, Stallman estimates. But there is no way of knowing the actual number, says Len Tower Jr., one of the foundation's directors. ``It's a hard question to answer because of the way we do distribution: We encourage people to pass it on.''
WHAT has attracted even more attention than the editor is Stallman's compiler, an essential part of any operating system that takes source-code and turns it into object-code. GCC, as the program is called, is considered by many to be one of the best compilers around.
``It produces code that is as good or better than any commercial compiler that I have ever used,'' says Donn Seeley, a senior systems programmer at the University of Utah. Next Inc., the company started by Steve Jobs, the founder of Apple Computer, has chosen GCC for the basis of its new system. ``The GNU C compiler generates very efficient and well-optimized code,'' says Robert Fraik, system software product manager of Next Inc.
Despite the fact that the programs are free, a lot of people are willing to pay for copies of them, which so far has been the foundation's primary source of revenues. Last year, the foundation grossed $200,000, compared with only$23,000 just two years before. Nearly all the money collected goes to hire programmers who are writing the rest of GNU.
The foundation has also increasingly been the target of corporate gifts of money, equipment, and people. Work stations on loan from computer companies litter the main work area, part of a hallway borrowed from MIT's Artificial Intelligence Lab.
Hewlett-Packard, a major computer manufacturer, has promised the project $100,000 in money and $350,000 in equipment. But that grant was held up for more than three months, Stallman says, because HP wanted him to sign a software license agreement promising that the programs supplied with the computers would not be copied. ``I don't think that people should ever make promises not to share with their neighbor, and I've decided to live by that myself,'' Stallman says.
Like the hundreds of people who have volunteered to work on GNU, Stallman has donated all his work. He supports himself by writing programs on a free-lance basis two months each year; and he refuses to work on any project that produces proprietary programs. So far, he hasn't had any problems finding jobs.
Not everyone is enamored of the Free Software Foundation. One company, Unipress Software, sells a program for $395 a copy that is in many ways similar to Stallman's Emacs. ``Implicitly, there have to be problems'' with free software, says Unipress's vice-president, Frederick Pack, ``at least with support.''
But many people feel that GNU programs are actually supported better than many programs sold on the market. ``There are bugs in vendor-supplied compilers that go on unfixed for years,'' says Utah's Mr. Seeley. ``In the case of GCC, we often fix the bugs ourselves, and if we can't, we send mail to RMS and he fixes them for us, usually within a day.''
Mr. Tower amplifies the point: ``GNU or free software is never going to hold you up. If you need a bug fixed, you can hire a competent programmer and have it done.'' To make things easier, the Free Software Foundation distributes a list of programmers who are willing to work on GNU software on an hourly basis. Having access to source-code is also important for security reasons, says Jeffrey I. Schiller, manager of MIT's campus network. Having source-code means that holes in security can be fixed as soon as they are detected, rather than waiting for new releases of software from vendors.
Several major programs remain to be written before GNU is usable as a full-fledged computer operating system. One is the ``kernel,'' the program at the heart of the operating system that arbitrates between multiple programs, which want to run at the same time. Another is the ``file system,'' which dictates how the computer arranges information on its disks.
Tower hopes that GNU project will be able to use a kernel and a file system developed independently in the academic computer community. Like GNU, many universities are now distributing their software on a free basis.
Stallman estimates that the operating system might be functional within two years. ``One nice thing about not being a commercial organization is, we don't need to have estimates of completion time,'' he jokes. ``I don't have to say when it will be done. I just have to do my best.''