12.1 Icons

Free For All. Go to the Table of Contents. Vist the Gifcom.


The archetypes are often defined by prominent people, and no one is more central to the free source world than Richard Stallman. Some follow the man like a disciple, others say that his strong views color the movement and scare away normal people. Everyone goes out of their way to praise the man and tell you how much they respect what he's done. Almost everyone will turn around and follow the compliment with a veiled complaint like, "He can be difficult to work with." Stallman is known for being a very unreasonable man in the sense that George Bernard Shaw used the word when he said, "The Reasonable man adapts to nature. The unreasonable man seeks to adapt nature to himself. Therefore it is only through the actions of unreasonable men that civilization advances." The reasonable man would still be waiting on hold as the tech support folks in MegaSoft played with their Nerf footballs and joked about the weenies who needed help using their proprietary software.


I often think that only someone as obsessed and brilliant as Stallman could have dreamed up the GNU Public License. Only he could have realized that it was possible to insist that everyone give away the source code and allow them to charge for it at the same time if they want. Most of us would have locked our brains if we found ourselves with a dream of a world of unencumbered source code but hobbled by the reality that we needed money to live. Stallman found himself in that place in the early days of the Free Software Foundation and then found a way to squeeze his way out of the dilemma by charging for CD-ROMs and printed manuals. The fact that others could still freely copy the information they got meant that he wasn't compromising his core dream.


If Stallman is a product of MIT, then one opposite of him is the group of hackers that emerged from Berkeley and produced the other free software known as FreeBSD, NetBSD, and OpenBSD. Berkeley's computer science department always had a tight bond with AT&T and Sun and shared much of the early UNIX code with both.


While there were many individuals at Berkeley who are well known among developers and hackers, no one stands out like Richard Stallman. This is because Stallman is such a strong iconoclast, not because Berkeley is the home of ne'er-do-wells who don't measure up. In fact, the pragmatism of some of the leaders to emerge from the university is almost as great as Stallman's idealism, and this pragmatism is one of the virtues celebrated by Berkeley's circle of coders. For instance, Bill Joy helped develop much of the early versions of the BSD before he went off to take a strong leadership role at Sun Microsystems.


Sun has a contentious relationship with the free software world. It's far from a free software company like Red Hat, but it has contributed a fair number of lines of software to the open source community. Still, Sun guards its intellectual property rights to some packages fiercely and refuses to distribute the source with an official open source license. Instead, it calls their approach the "community source license" and insists that it's good enough for almost everyone. Users can read the source code, but they can't run off with it and start their own distribution.


Many others from Berkeley followed Joy's path to Sun. John Ousterhout left his position as a professor at Berkeley in 1994 to move to Sun. Ousterhout was known for developing a fairly simple but powerful scripting tool known as TCL/Tk. One part of it, the Tool Control Language (TCL), was a straightforward English-like language that made it pretty easy for people to knit together different modules of code. The user didn't have to be a great programmer to work with the code because the language was designed to be straightforward. There were no complicated data structures or pointers. Everything was a string of ASCII text.


The second part, the Tool kit (Tk), contained a variety of visual widgets that could be used to get input for and output from a program. The simplest ones were buttons, sliders, or menus, but many people wrote complicated ones that served their particular needs.


The TCL/Tk project at Berkeley attracted a great deal of attention from the Net. Ousterhout, like most academics, freely distributed his code and did a good job helping others use the software. He and his students rewrote and extended the code a number of times, and this constant support helped create even more fans. The software scratched an itch for many academics who were smart enough to program the machines in their lab, but burdened by more important jobs like actually doing the research they set out to do. TCL/Tk picked up a wide following because it was easy for people to learn a small amount quickly. Languages like C required a semester or more to master. TCL could be picked up in an afternoon.


Many see the pragmatism of the BSD-style license as a way for the Berkeley hackers to ease their trip into corporate software production. The folks would develop the way-out, unproven ideas using public money before releasing it with the BSD license. Then companies like Sun would start to resell it.
The supporters of the BSD licenses, of course, don't see corporate development as a bad thing. They just see it as a way for people to pay for the extra bells and whistles that a dedicated, market-driven team can add to software.


Ousterhout's decision to move to Sun worried many people because they thought it might lead to a commercialization of the language. Ousterhout answered these with an e-mail message that said TCL/Tk would remain free, but Sun would try to make some money on the project by selling development tools.
"Future enhancements made toTcl andTk by my group at Sun, including the ports to Macs and PCs, will be made freely available to anyone to use for any purpose. My view, and that of the people I report to at Sun, is that it wouldn't work for Sun to try to takeTcl andTk proprietary anyway: someone (probably me, in a new job) would just pick up the last free release and start an independent development path. This would be a terrible thing for everyone since it would result in incompatible versions.


"Of course, Sun does need to make money from the work of my team or else they won't be able to continue to support us. Our current plan is to charge for development tools and interesting extensions and applications. Balancing the public and the profitable will be an ongoing challenge for us, but it is very important both to me and to Sun to keep the support of the existing Tcl community," he wrote.
In some respects, Ousterhout's pragmatism was entirely different from Stallman's. He openly acknowledged the need to make money and also admitted that Sun was leaving TCL/Tk free because it might be practically impossible to make it proprietary. The depth of interest in the community made it likely that a free version would continue to evolve. Stallman would never cut such a deal with a company shipping proprietary software.


In other respects, many of the differences are only at the level of rhetoric. Ousterhout worked on producing a compromise that would leave TCL/Tk free while the sales of development tools paid the bills. Stallman did the same thing when he figured out a way to charge people for CD-ROMs and manuals. Ousterhout's work at Sun was spun off into a company called Scriptics that is surprisingly like many of the other free software vendors. The core of the product, TCL/Tk 8.1 at this time, is governed by a BSD-style license. The source code can be downloaded from the site. The company itself, on the other hand, sells a more enhanced product known as TCLPro.


In many ways, the real opposite to Richard Stallman is not Bill Joy or John Ousterhout, it's Linus Benedict Torvalds. While Stallman, Joy, and Ousterhout are products of the U.S. academic system, Torvalds is very much an outsider who found himself trying to program in Europe without access to a decent OS. While the folks at Berkeley, MIT, and many U.S. universities were able to get access to UNIX thanks to carefully constructed licenses produced by the OS's then-owner, AT&T, students in Finland like Torvalds were frozen out.


"I didn't have many alternatives. I had the commercial alternative [UNIX], which was way too expensive. It was really out of reach for a normal human being, and not only out of reach in a monetary sense, but because years ago commercial UNIX vendors weren't interested in selling to individuals. They were interested in selling to large corporations and banks. So for a normal person, there was no choice," he told VAR Business.


When Linux began to take off, Torvalds moved to Silicon Valley and took a job with the supersecret research firm Transmeta. At Comdex in November 1999, Torvalds announced that Transmeta was working on a low-power computing chip with the nickname "Crusoe."


There are, of course, some conspiracy theories. Transmeta is funded by a number of big investors including Microsoft cofounder Paul Allen. The fact that they chose to employ Torvalds may be part of a plan, some think, to distract him from Linux development. After all, version 2.2 of the kernel took longer than many expected, although it may have been because its goals were too ambitious. When Microsoft needed a coherent threat to offer up to the Department of Justice, Transmeta courteously made Torvalds available to the world. Few seriously believe this theory, but it is constantly whispered as a nervous joke.