Author: Karl Fogel

Brief background for those who haven’t been following this particular bit of theater: The radio commentator Don Imus, while watching a college women’s basketball game, called one of the teams “nappy-headed hos”. This was going too far, even for a shock jock like Imus. Advertisers started pulling their ads, and eventually Imus’s employer cancelled his show entirely, despite his going around and apologizing to everyone in sight.

Now, I’m totally in favor of Don Imus getting fired. In fact, I’m in favor of him not having been hired in the first place — who needs talk shows like that anyway?

But I was bemused, and disturbed, to hear Imus on NPR quoted saying that while he regretted his comments, he’s not a racist, and if he’d really been guilty of racist hate speech, he ought to be thrown in jail. (I wish I had the exact quote here, but I was just listening to the radio in the kitchen and not taking notes. I tried to find a transcript on the Internet, but couldn’t, even at

It’s obvious what Imus was trying to convey. “I’m not one of the bad guys! I’m a good guy! I’m not really a racist! It was all for show! Racists are bad people who spew hateful speech and deserve jail; I’m not one of them.”

Still, how can someone whose entire career has been utterly dependent on freedom of speech — by which I mean, freedom from government-enforced penalties for speech — turn around and stab the principle in the back like that? Sure, people lose their jobs for speech all the time, and that’s fine. Freedom of speech doesn’t mean that there’s no such thing as bad, harmful speech: there certainly is such a thing, and there are times when it should cost you your job. (Universities are a special case, and the tenure system is in part a formal protection for controversial speech by academics.) But jail? Or other state-mandated penalties? Those should be completely off the table, because otherwise people wouldn’t feel free to disagree with the government.

Thanks for nothing, Don Imus. If you want to make it up to the rest of us, send a big check to the ACLU. They’ll still defend your right to free speech, even if you won’t.

The debate about lesbian/gay marriage has reached a stage of pure symbolism: many people are now comfortable with the idea of “civil union” laws, which grant all the privileges of marriage without calling it “marriage”. Some state governments have even passed such laws, and more will undoubtedly follow.

Understandably, not everyone is happy with this. It’s clearly a deliberate slap in the face for people who want to marry partners of the same sex — a slap that stings all the more because it is legitimized by democratically-elected legislatures. We’ll give you everything you want, except the right to call it marriage, because that’s sacred, you see. You will always be a second-class citizen, because we’ve passed a law that contains a clause whose only purpose is to make you feel second-class.

There’s a solution, though.

Let’s treat marriage as though it’s really sacred. Let’s get the government out of the marriage business entirely, and do only civil unions, leaving marriage for religious institutions. Effectively, that’s what we already do anyway. The secular, state-supported side of marriage is represented by the marriage license; the government doesn’t care about the religious details (if any) of the ceremony, even though that’s the part everyone thinks of as the “real” wedding.

So we’d all get civil unions, and those who want to also be married (and can find a priest willing to perform what is essentially a religious ceremony) are free to do so. If a lesbian couple wants to be married, that’s between them and their church. There’s no reason for the government to get involved in the matter, and no reason for a secular democracy to try to define the spiritual meaning of marriage, as opposed to its legal meaning.

The book Beautiful Code: Leading Programmers Explain How They Think is
about to be released, says Greg Wilson, one of its editors (the other is Andy Oram, who was my editor for Producing Open Source Software). I wrote a chapter for this new book: Subversion’s Delta Editor: Interface as Ontology, about the svn_delta_editor_t interface in Subversion. When the book is released, I’ll put the chapter online under a free license (a lot of the other authors are planning to do that too, I believe). All profits from the book go to Amnesty International.

The letter below was sent by my friend Jim Blandy to the governor of Oregon, Jim’s state. In it, Jim asks what Oregon can do to avoid a disaster like the recent group deportation of immigrants in Massachusetts that resulted in children being abandoned, as described on National Public Radio and in the Boston Globe.

Before I say more, please read Jim’s letter:

From: Jim Blandy
Subject: Abandoned children
To: [a mailing list we're on]
Date: Fri, 9 Mar 2007 21:53:37 -0800

Folks, I'd never use [this mailing list] for campaigning, but I think
this goes far beyond politics, and well into the territory of national
disgrace.  I've sent the following letter to Oregon governor Ted
Kulongoski; please read the articles I've linked to, and think of
*something* you can do.  If abandoning 7-month old children doesn't
move us to more than a sophisticated sigh about how far things have
gone, we don't deserve a decent country.


Dear Governor Kulongoski,

NPR's March 8th Morning edition and the March 9th Boston Globe
reported on an egregious and shameful dereliction of our
responsibility to the most helpless in our country: a Massachusetts
factory was raided on March 6th, and scores of workers accused of
being in the United States illegally were flown to a Texas detention
center before state authorities could determine whether there was
anyone able to take care of their children.  According to the Globe:

 Two young children were hospitalized yesterday for dehydration after
 their nursing mothers were taken away, state officials said.
 Another 7-year-old girl called a state hot line seeking her detained
 mother.  It was unclear last night where their mothers were.

I can't express how angry and ashamed this news makes me.  Let us
assume all of the people transported to Texas were indeed in the
U.S. illegally; there is no imaginable justification for abandoning
their children in this way.  When we imprison a murderer who is a sole
caregiver, we take better care of their dependents than this.  There
is simply no legitimate law enforcement need that could justify such

I have three questions:

- Oregon has its share of illegal immigrants.  I am firmly in favor of
 enforcing the laws that our state and national legislative bodies
 have agreed on.  What assurance can you give me that a disgrace of
 the sort occurring now in Massachusetts will not happen in Oregon?

- Who is responsible for ensuring, when a sole caregiver is found to
 be residing in Oregon illegally, that the children they care for
 will be taken care of appropriately?

- What is that responsible party's position on the Massachusetts raid?
 Do they feel it was properly conducted?  If so, would they do the
 same here?  If not, what steps have they taken to ensure this will
 not happen again?

I understand that the Department of Homeland Security conducts
immigration raids, and that the DHS is a federal department, not
controlled by the state of Oregon.  But if a debacle like this were to
occur here, Oregonians would hardly be satisfied to hear that there
was nothing to be done, and from what I have read of you, I do not
believe you would offer such an explanation.

Jim Blandy

[URLs given here]

Bravo for Jim — we should all ask the questions he’s asking. What Governor Kulongoski probably won’t say in reply is that this is how our immigration system is supposed to work. The whole point is to have a large number of people around willing to labor at low wages, but unable to be involved in civic affairs. Solution: make them officially illegal, but unofficially tolerated, as long as they don’t raise too much of a fuss — and brutally deport a few now and then to make sure they stay in line.

I’ll bet African Americans recognize this pattern pretty well.

Am I too cynical? Ask yourself this question: why don’t we simply crack down on businesses that employ illegal workers? After all, if we wanted to end illegal immigration in this country, we could do it in two seconds. Illegal immigrants aren’t exactly hard to find. Just go to every restaurant, farm, landscaping company, etc, in your precinct, and start fining the employers. That would end the “problem” pretty quickly, wouldn’t it?

But no, instead we harass and hound the immigrants. We talk, incredibly, of building a seven-hundred mile fence along our border to keep them out, as though they’re not right here next to us the whole time, busing our tables, picking our fruit, cutting our lawns. This is just the American way, apparently: bully the weak, before doing anything that might annoy businesses or put upward pressure on wages.

I don’t think what happened in Massachusetts was some sort of one-time exception. Perhaps it was unusually cruel… but more likely it was just unusually publicized. Here’s another raid that made it into the press: Lockdown in Greeley, excellently reported on by Marc Cooper in The Nation.

How many times must this happen before we admit what we’re doing?

In 2005, Nat Torkington edited a series of posts called Burn In over at O’Reilly Radar. He described them as “stories about how alpha geeks got into computers in the first place“. I’m not really an alpha geek, but he ran my essay anyway. I asked Nat if he’d mind my using the same material to start my own blog (which I hadn’t yet done at that point), and he said it was fine. Here it is, slightly revised.


In the early 1990’s, the Oberlin College Computer Science Department was a hotbed of free software activity. The sysadmin, Chuck Van Tilburg, encouraged the students to help maintain the department’s servers; the students responded by installing GNU programs and documentation, and tutoring newbies in how to use them. Quite a few even contributed code back to the GNU project. Now, I’d used computers before coming to Oberlin, and I thought I understood how programs worked: you started them up, they did something, and when you were done you shut them down. If you wanted different functionality, you shopped around for a different program. So I still remember the shock that went through me the first time I started up the GNU ‘info’ browser on the Oberlin CS machines. The screen gave a few basic instructions for navigating the Info hyperlinks, then below that it said: “PLEASE ADD DOCUMENTATION TO THIS TREE. See blah blah blah for instructions on how to do so.”

The system was inviting me to improve the system! No computer had ever done that before. It had never occurred to me that the system documentation was just files, no different in principle from the files I saved from my word processor when writing a paper for class. But when I saw the Info tree inviting me to make it better, I suddenly understood. Perhaps it is only one of those ex post facto artificial memories, but I recall that I formed a tentative hypothesis then that the entire system worked this way, and that if I learned the right technical details, I could Make Things Better too. Testing this hypothesis became my highest priority; perhaps it still is.

The other important thing about the Oberlin CS Lab in those days is, in retrospect, a sad commentary on the nature of progress:

College dorms were not networked then. If you wanted access to the CS servers, or even just to check your email, you had to go to the Computer Science Lab. This was a small room with twenty or so workstations, mostly 9600 baud text terminals but also a few graphics workstations. So at any hour of the day or night, you could wander into the Lab and find other CS students, working on programs, or installing some new software on the department’s servers, or just hanging out.

I realize now that we had caught a brief, golden moment in time. The Internet was up (without the World Wide Web at that time), but networking had not yet penetrated to every corner of life. Those wanting to get serious work done on a computer were forced to be in the same room with each other.

This had a tremendous effect. People shot questions across the room; people traded code; people came and looked over each others’ shoulders and offered tips on how to use the editor (usually Emacs) better; people maintained files of hilarious quotes overheard in the Lab, and wrote programs to serve up a randomly chosen quote at login time. People played games together, did their homework together, designed cool hacks together, explored the nascent Internet together.

It was a true programming community. Shortly after my epiphanous encounter with the Info browser, a Lab regular named Jim Blandy (now a GNU toolchain hacker at CodeSourcery) pointed me at Richard Stallman’s GNU Manifesto, and I remember reading it and thinking “Yes, I understand, this makes total sense.” At the time I didn’t know why, but now I think I do: the GNU Manifesto made sense because I was already living in a sharing community. And since my first exposure to computer programming took place in that environment, I simply assumed that kind of community was the norm.

After college my first jobs were in free software, and (except for a brief interlude) that’s what I’ve been doing ever since. I have an idea that, at least in terms of information if not physical goods, the whole world could be like the Oberlin CS Lab was: a sharing community where people assume that improving the system is within anyone’s reach.

That’s probably a lot to hope for… but why not see how close we can get?