12.2 Flames

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

The fights and flamefests of the Internet are legendary, and the open source world is one of the most contentious corners of the Net. People frequently use strong words like "brain dead," "loser," "lame," "gross," and "stoooopid" to describe one another's ideas. If words are the only way to communicate, then the battle for mindshare means that those who wield the best words win.

In fact, most of the best hackers and members of the free source world are also great writers. Spending days, weeks, months, and years of your life communicating by e-mail and newsgroups teaches people how to write well and get to the point quickly. The Internet is very textual, and the hard-core computer programmers have plenty of experience spitting out text. As every programmer knows, you're supposed to send e-mail to the person next to you if you want to schedule lunch. That person might be in the middle of something.

Of course, there's a danger to making a sweeping generalization implying that the free source world is filled with great writers. The fact is that we might not have heard from the not-so-great writers who sit lurking on the Net. While some of the students who led the revolutions of 1968 were quite articulate, many of the tie-dyed masses were also in the picture. You couldn't miss them. On the Internet, the silent person is invisible.

Some argue that the free software world has burgeoned because the silent folks embraced the freely available source code. Anyone could download the source code and play with it without asking permission or spending money. That meant that 13-year-old kids could start using the software without asking their parents for money. SCO Unix and Windows NT cost big bucks.

This freedom also extended to programmers at work. In many companies, the computer managers are doctrinaire and officious. They often quickly develop knee-jerk reactions to technologies and use these stereotypes to make technical decisions. Free software like Linux was frequently rejected out of hand by the gatekeepers, who thought something must be wrong with the software if no one was charging for it. These attitudes couldn't stop the engineers who wanted to experiment with the free software, however, because it had no purchase order that needed approval.

The invisible-man quality is an important part of the free software world. While I've described the bodies and faces of some of the betterknown free source poster boys, it is impossible to say much about many of the others. The community is spread out over the Internet throughout the world. Many people who work closely on projects never meet each other. The physical world with all of its ways of encoding a position in a hierarchy are gone. No one can tell how rich you are by your shoes. The color of your skin doesn't register. It's all about technology and technological ideas.

In fact, there is a certain degree of Emily Dickinson in the world. Just as that soul selected her own society and shut the door on the rest of the world, the free software world frequently splits and resplits into smaller groups. While there is some cross-pollination, many are happy to live in their own corners. OpenBSD, FreeBSD, and NetBSD are more separate countries than partners in crime. They evolve on their own, occasionally stealing ideas and source code to bridge the gap.

Many writers have described some of their problems with making hay of the Silicon Valley world. Screenwriters and television producers often start up projects to tap into the rich texture of nerdlands only to discover that there's nothing that compelling to film. It's just miles and miles of steel-frame buildings holding acres and acres of cubicles. Sure, there are some Ping-Pong tables and pinball machines, but the work is all in the mind. Eyes want physical action, and all of the excitement in a free source world is in the ideas.

But people are people. While there's no easy way to use the old standbys of race or clothes to discriminate, the technical world still develops ways to classify its members and place them in camps. The free software world has its own ways to distinguish between these camps.

The biggest distinction may be between folks who favor the GPL and those who use the BSD-style license to protect their software. This is probably the biggest decision a free software creator must make because it controls whether others will be able to build commercial versions of the software without contributing the new code back to the project.

People who embrace the GPL are more likely to embrace Richard Stallman, or at least less likely to curse him in public. They tend to be iconoclastic and individualistic. GPL projects tend to be more cultish and driven by a weird mixture of personality and ain't-it-cool hysteria.

The people on the side of BSD-style license, on the other hand, seem pragmatic, organized, and focused. There are three major free versions of BSD UNIX alone, and they're notable because they each have centrally administered collections of files. The GPL-protected Linux can be purchased from at least six major groups that bundle it together, and each of them includes packages and pieces of software they find all over the Net.

The BSD-license folks are also less cultish. The big poster boys, Torvalds and Stallman, are both GPL men. The free versions of BSD, which helped give Linux much of its foundation, are largely ignored by the press for all the wrong reasons. The BSD teams appear to be fragmented because they are all separate political organizations who have no formal ties. There are many contributors, which means that BSD has no major charismatic leader with a story as compelling as that of Linus Torvalds.

Many contributors could wear this mantle and many have created just as much code. But life, or at least the media's description of it, is far from fair.

The flagship of the BSD world may be the Apache web server group, which contributed greatly to the success of the platform. This core team has no person who stands out as a leader. Most of the people on the team are fully employed in the web business, and several members of the team said that the Apache team was just a good way for the people to advance their day jobs. It wasn't a crusade for them to free source code from jail.

The Apache web server is protected by a BSD-style license that permits commercial reuse of the software without sharing the source code. It is a separate program, however, and many Linux users run the software on Linux boxes. Of course, this devotion to business and relatively quiet disposition isn't always true. Theo de Raadt, the leader of the OpenBSD faction, is fond of making bold proclamations. In his interview with me, he dismissed the Free Software Foundation as terribly misnamed because you weren't truly free to do whatever you wanted with the software.

In fact, it's easy to take these stereotypes too far. Yes, GPL folks can be aggressive, outspoken, quick-thinking, driven, and tempestuous. Sure, BSD folks are organized, thorough, mainstream, dedicated, and precise. But there are always exceptions to these rules, and the people in each camp will be quick to spot them.

Someone might point out that Alan Cox, one of the steadfast keepers of the GPL-protected Linux kernels, is not particularly flashy nor given to writing long manifestos on the Net. Others might say that Brian Behlendorf has been a great defender of the Apache project. He certainly hasn't avoided defending the BSD license, although not in the way that Stallman might have liked. He was, after all, one of the members of the Apache team who helped convince IBM that they could use the Apache web server without danger.
After BSD versus GPL, the next greatest fault line is the choice of editor. Some use the relatively simple vi, which came out of Berkeley and the early versions of BSD. Others cleave to Stallman's Emacs, which is far more baroque and extreme. The vi camp loves the simplicity. The Emacs fans brag about how they've programmed their version of Emacs to break into the White House, snag secret pictures of people in compromising positions, route them through an anonymous remailer, and negotiate for a big tax refund all with one complicated control-meta-trans keystroke.

While this war is well known, it has little practical significance. People can choose for themselves, and their choices have no effect on others. GPL or BSD can affect millions; vi versus Emacs makes no big difference. It's just one of the endless gag controversies in the universe. If Entertainment Tonight were covering the free software world, they would spend hours cataloging which stars used vi and which used Emacs. Did Shirley MacLaine use vi or Emacs or even wordstar in a previous life?

Some of the other fault lines aren't so crisp, but end up being very important. The amount of order or lack of order is an important point of distinction for many free source people, and there is a wide spectrum of choices available. While the fact that all of the source code is freely redistributable makes the realm crazy, many groups try to control it with varying amounts of order. Some groups are fanatically organized. Others are more anarchic. Each has a particular temperament.

The three BSD projects are well known for keeping control of all the source code for all the software in the distribution. They're very centrally managed and brag about keeping all the source code together in one build tree. The Linux distributions, on the other hand, include software from many different sources. Some include the KDE desktop. Others choose GNOME. Many include both.

Some of the groups have carefully delineated jobs. The Debian group elects a president and puts individuals in charge of particular sections of the distribution. Or perhaps more correctly, the individuals nominate themselves for jobs they can accomplish. The group is as close to a government as exists in the open software world. Many of the Open Source Initiative guidelines on what fits the definition of "open source" evolved from the earlier rules drafted by the Debian group to help define what could and couldn't be included in an official Debian distribution. The OpenBSD group, on the other hand, opens up much of the source tree to everyone on the team. Anyone can make changes. Core areas, on the other hand, are still controlled by leaders.

Some groups have become very effective marketing forces. Red Hat is a well-run company that has marketing teams selling people on upgrading their software as well as engineering teams with a job of writing improved code to include in future versions. Red Hat packages their distribution in boxes that are sold through normal sales channels like bookstores and catalogs. They have a big presence at trade shows like LinuxExpo, in part because they help organize them.

Other groups like Slackware only recently opened up a website. OpenBSD sells copies to help pay for its Internet bills, not to expand its marketing force. Some distributions are only available online.
In many cases, there is no clear spectrum defined between order and anarchy. The groups just have their own brands of order. OpenBSD brags about stopping security leaks and going two years without a rootlevel intrusion, but some of its artwork is a bit scruffy. Red Hat, on the other hand, has been carefully working to make Linux easy for everyone to use, but they're not as focused on security details.

Of course, this amount of order is always a bit of a relative term. None of these groups have strong lines of control. All of them depend upon the contributions of people. Problems only get solved if someone cares enough to do it.

This disorder is changing a bit now that serious companies like Red Hat and VA Linux are entering the arena. These companies pay fulltime programmers to ensure that their products are bug free and easy to use. If their management does a good job, the open source software world may grow more ordered and actually anticipate more problems instead of waiting for the right person to come along with the time and the inclination to solve them.

These are just a few of the major fault lines. Practically every project comes with major technical distinctions that split the community. Is Java a good language or another attempt at corporate control? How should the basic Apache web server handle credit cards? What is the best way to handle 64-bit processors? There are thousands of differences, hundreds of fault lines, scores of architectural arguments, and dozens of licenses. But at least all of the individuals agree upon one thing: reading the source code is essential.