Ted Dziuba has penned a humorous and sharp-tongued piece for The Register about last week's Adblock vs. NoScript fiasco. For those of you who aren't Firefox junkies, a nasty public spat broke out between the makers of these two very popular Firefox Browser extensions (they are the #1 and #3 most popular downloads respectively). To make a long and complicated story much shorter, basically, NoScript didn't like Adblock placing them on their list of blacklisted sites and so they fought back by tinkering with the NoScript code to evade the prohibition. Adblock responded by further tinkering with their code to circumvent the circumvention! And then, as they say, words were exchanged.
Thus, a war of words and code took place. In the end, however, it had a (generally) happy ending with NoScript backing down and apologizing. Regardless, Mr. Dzuiba doesn't like the way things played out:
The real cause of this dispute is something I like to call Nerd Law. Nerd Law is some policy that can only be enforced by a piece of code, a public standard, or terms of service. For example, under no circumstances will a police officer throw you to the ground and introduce you to his friend the Tazer if you crawl a website and disrespect the robots.txt file.
The only way to adjudicate Nerd Law is to write about a transgression on your blog and hope that it gets to the front page of Digg. Nerd Law is the result of the pathological introversion software engineers carry around with them, being too afraid of confrontation after that one time in high school when you stood up to a jock and ended up getting your ass kicked.
Dziuba goes on to suggest that "If you actually talk to people, network, and make agreements, you'll find that most are reasonable" and, therefore, this confrontation and resulting public fight could have been avoided. They "could have come to a mutually-agreeable solution," he says.
But no. Sadly, software engineers will do what they were raised to do. And while it may be a really big hullabaloo to a very small subset of people who Twitter and blog their every thought as if anybody cared, to the rest of us, it just reaffirms our knowledge that it's easy to exploit your average introvert. After all, what's he gonna do? Blog about it?
OK, so maybe the developers could have come to some sort of an agreement if they had opened direct channels of communications or, better yet, if someone at
the Mozilla Foundation could have intervened early on and mediated the dispute. At the end of the day, however, that did not happen and a public "Nerd War" ensued. But I'd like to say a word in defense of Nerd Law and public fights about "a piece of code, a public standard, or terms of service."
What we had here was a code war that, despite some nastiness, was resolved reasonably well and on a reasonably timely basis. Now, imagine if this sort of dispute had gone legal, or worse yet, been subjected to a federal regulatory proceeding. Can you imagine the Federal Communications Commission being asked to adjudicate such a thing! Next time you hear of a major dispute coming before the commission, start your stopwatch and pray that it doesn't die before the FCC finally gets around to rendering its judgment on the matter at hand. Worse yet, sit back and watch as entire forests will fall from the resulting paperwork war as both sides hire teams of lawyers, economists, and consultants to file an endless stream of indecipherable documents with the Commission.
What got me thinking about all this is that recently I've been critiquing Lessig's "code-is-law" thesis and pointing out that code really doesn't have the same force as law, and thank God it doesn't! Precisely because it does not have the coercive capacity of actual law or regulation it means that code developers must use other means to persuade competitors or the public to side with them in disputes. It means that code developers must find ways to innovate around problems, sometimes even creating messy code wars in the process. And yes, it sometimes means that, when that process goes badly, a war of words may take place online. But still, isn't that better than the legal alternative or a regulatory approach?
And, so, when Mr. Dziuba suggests that "The only way to adjudicate Nerd Law is to write about a transgression on your blog and hope that it gets to the front page of Digg," I guess I just don't see as much of a downside to that approach as he does. I share his belief that it would be nice to get both sides to a table to talk and hopefully to hammer out an agreement, but sometimes that doesn't always happen in cyberspace or in realspace for that matter. What's going on here is the same game that companies and unions have been playing for years: Push the envelope in public by any means necessary to drive a better bargaining position when you eventually must come to the table and reach an agreement. Athletes and sports clubs do the same thing.
Thus, I am rather fond of "Nerd Law," or "Code Wars" or whatever you want to call it. (Perhaps "hard-nosed public negotiations" is the better umbrella term). Let coders have their fights and air their dirty laundry in public because, at the end of the day, that process will likely reach a better conclusion than if they took a highly legalistic or regulatory approach to things. I do not mean to suggest that law or regulation never has a place in resolving disputes. Rather, I am suggesting that the sheer cost of the legal / regulatory route -- in terms of time, money, lost innovation opportunities, etc -- makes is generally sub-optimal when compared to relying on non-legal means of dispute resolution.
So, let the coders have their Nerd Wars, I say. And let the best code win.