Curmudgeon

  Download PDF version of this article PDF

A Bigot by Any Other Name...

Josh Coates, Internet Archive

Are you an Open Source Bigot?

I’ve been responsible for hiring many software engineers. I tend to ask lots of elaborate technical questions so I can really get to know how the candidate thinks and works with me while solving hard problems.

QA (quality assurance) engineers will appreciate this one (it’s a “negative test” for intellectual honesty): “Explain the relative strengths and weaknesses of FreeBSD, Windows NT, Solaris, and Linux.”

Ah, but here’s the rub. The intellectually honest answer is that they all suck more or less equally. Or, if you are a glass-half-full kind of people, they all rock.

There are lots of areas you can talk about: threading, I/O performance, development environment, etc. Let’s just pick one area: security. All operating systems suffer from vulnerabilities. I’ve managed many large server farms on Solaris, Windows 2000, and Linux. I know of three specific instances when they have been “hacked”: once on the Solaris cluster and twice on Linux. On the other hand, my Windows desktop blue-screens every few months and I have to rely on McAfee to get any sleep at night. The point is, lots of smart people are out there developing great code—none of it is perfect, and some is proprietary and some is open. (OpenBSD’s security excellence is duly noted.)

And let’s look at applications. Microsoft Excel is an incredibly excellent piece of software. Sure, you have to end up using Gnuplot when you are graphing data sets larger than 65,536, but aside from that, it’s a well-designed, super-useful tool.

Yep, it’s just a tool. They are all tools. They aren’t religious icons or some karma-affecting stream of bits.

It’s pretty obvious what I mean. There are people out there who are convinced that if it’s not open source, then it’s inferior (functionally, morally, and otherwise). You probably work with one of these people. Heck, you might even be one. Not sure what I’m talking about? Here is a very charitable definition, courtesy of Merriam-Webster:

Pronunciation: ‘bi-get

Function: noun

Etymology: Middle French, hypocrite, bigot

Meaning: a person obstinately or intolerantly devoted to his or her own opinions and prejudices

I considered writing this anonymously because there is a large population of open source zealots who are about as obtuse and vindictive as the folks over at SCO, and I’m not excited to get on their bad side. At Berkeley I was on the Linux User Group board when a bunch of members organized a “proselytizing session” in Sproul Plaza. This was around the time that Windows 98 was launched, so the time was right to “stick it to the man.”

Imagine a bunch of people wandering around the plaza holding signs saying, “Got Linux?” and “Micro$oft must die!” mixed in with the born-again Christians’ signs, “Got Jesus?” and “Homosexuals will burn in hell.” Both of these groups would occasionally yell out something like, “Turn from the dark side” and “Join us.”

It’s kind of creepy how much they have in common.

This is where it gets interesting. I’m not suggesting that all Christians are bigots. I’m not suggesting all open source supporters are bigots either. I am suggesting that both “religions” include bigoted morons, and that they suffer from the same flawed mode of thinking. The 19th-century American author Josh Billings put it best: “Wisdom has never made a bigot, but learning has.”1

Interestingly enough, some of the most educated people in modern history have been incredibly bigoted (or what I like to call “suffering from a delusional perception of reality”). Charles Darwin was a brilliant scientist, yet he maintained that women simply had a less-evolved intellect then men—not to mention his elaborate explanation for the “savage races.” William Shockley won the Nobel Prize for inventing the transistor, but went on to promote genetic theories of the intellectual inferiority of blacks.

Alexander Pope, an English satirist, wrote “A little learning is a dangerous thing; Drink deep, or taste not the Pierian spring: There shallow draughts intoxicate the brain, And drinking largely sobers us again.”2

Gee, do you know anyone who has taken a shallow draught? Ever read Slashdot?

So this is an unfortunate circumstance—and I’d say the Achilles heel of the open source movement is hubris, which breeds bigotry. It’s sadly ironic that one of the poster boys for open source is Linus Torvalds, who suffers from chronic hubris. While there are many accounts of this hubris available online, I’ve seen it myself, first hand. In 1998 I attended an intimate Q&A session that Torvalds gave when he visited Berkeley. But interestingly enough, the only thing I remember is that he referred to the open source developers who worked on Linux as his “slaves” and smugly laughed at how willing they were to do his bidding. Just a quirky sense of humor? Maybe.

Now that I’ve managed to offend everyone, let me at least try to dig my way out of this. I use open source software. I like open source software. I use proprietary software. I like proprietary software. Oh, and Torvalds might not be that bad of a guy (but, well—he probably is. :-)

At the end of the day, it’s OK to be passionate and opinionated about whatever you’re into—but it’s not OK to be a bigot. In my book, if you are bigoted about software development methodologies, you are only one goose step away from the “coder master race.”

OK, flame on: [email protected].

References

1. Billings, J. (pen name of Henry Wheeler Shaw) Book of Sayings, originally published in 1866.2. Pope, A. Essay on Criticism (part ii, lines 15-17), originally published in 1711.

LOVE IT, HATE IT? LET US KNOW

[email protected] or www.acmqueue.com/forums

JOSH COATES is the director of engineering and operations at the Internet Archive, a nonprofit dedicated to preserving digital media. In 1999, he founded Scale8, which launched the largest Internet storage system in the world, spanning three continents. Prior to founding Scale8, Coates worked at Inktomi Corporation developing network caching software applications. In 2001 he was named one of Red Herring magazine’s Top Ten Innovators, and in 2002 he received MIT Technology Review’s Top 100 Innovators Award. Coates received a B.S. in computer science at the University of California, Berkeley, and was active in the Network of Workstations (NOW) Group and Millennium Project.

© 2004 ACM 1542-7730/05/0500 $5.00

acmqueue

Originally published in Queue vol. 2, no. 3
Comment on this article in the ACM Digital Library





More related articles:

Amanda Casari, Julia Ferraioli, Juniper Lovato - Beyond the Repository
Much of the existing research about open source elects to study software repositories instead of ecosystems. An open source repository most often refers to the artifacts recorded in a version control system and occasionally includes interactions around the repository itself. An open source ecosystem refers to a collection of repositories, the community, their interactions, incentives, behavioral norms, and culture. The decentralized nature of open source makes holistic analysis of the ecosystem an arduous task, with communities and identities intersecting in organic and evolving ways. Despite these complexities, the increased scrutiny on software security and supply chains makes it of the utmost importance to take an ecosystem-based approach when performing research about open source.


Guenever Aldrich, Danny Tsang, Jason McKenney - Three-part Harmony for Program Managers Who Just Don't Get It, Yet
This article examines three tools in the system acquisitions toolbox that can work to expedite development and procurement while mitigating programmatic risk: OSS, open standards, and the Agile/Scrum software development processes are all powerful additions to the DoD acquisition program management toolbox.


Jessie Frazelle - Open-source Firmware
Open-source firmware can help bring computing to a more secure place by making the actions of firmware more visible and less likely to do harm. This article’s goal is to make readers feel empowered to demand more from vendors who can help drive this change.


Marshall Kirk McKusick, George V. Neville-Neil - Thread Scheduling in FreeBSD 5.2
A busy system makes thousands of scheduling decisions per second, so the speed with which scheduling decisions are made is critical to the performance of the system as a whole. This article - excerpted from the forthcoming book, “The Design and Implementation of the FreeBSD Operating System“ - uses the example of the open source FreeBSD system to help us understand thread scheduling. The original FreeBSD scheduler was designed in the 1980s for large uniprocessor systems. Although it continues to work well in that environment today, the new ULE scheduler was designed specifically to optimize multiprocessor and multithread environments. This article first studies the original FreeBSD scheduler, then describes the new ULE scheduler.





© ACM, Inc. All Rights Reserved.