Kurt Cagle has an interesting piece on the term Open Standard and what, if anything, it means. Rather than a definition, I’m more interested in a shiboleth, a single test that can tell us whether source or a standard (or any other intellectual thingy) is open.

How about this: source code or a standard is open only if it can be forked against the objections of the maintainer. At first glance, this looks horrible — forking is usually considered the worst fate for a standard, a loud non-confidence vote in the maintainer — but that’s the point. Just as a true Democracy (in the modern, non-Athenian sense) allows you to throw out your government, a truly open standard or source code base allows you to throw out your maintainer. If the copyright terms, patents, or anything else prevent forking, then a standard or source code base is not open.

Sometimes a fork forces the original maintainer to get in gear. In the world of source code, XEmacs is an excellent example — while the maintainers of Emacs stubbornly refused to add anything but the most minimal support for modern GUIs, the early success of the GUI-fied XEmacs eventually forced them at least partly into the modern world, however reluctantly. Other times, a fork fixes something that is broken. In the world of standards, XML, with a more agile standards process and sharper focus (at least in the early days), forked and then completely replaced SGML. Linux is a stranger kind of fork, stealing all of the utilities that were being designed for Hurd without bothering with Hurd itself.

Like the ballot box for a politician, the fork — or even the threat of it — is what makes maintainers listen.

About David Megginson

Scholar, tech guy, Canuck, open-source/data/information zealot, urban pedestrian, language geek, tea drinker, pater familias, red tory, amateur musician, private pilot.
This entry was posted in General. Bookmark the permalink.

3 Responses to Forkability

  1. John Cowan says:

    I agree that forkability is a good quick test for the openness of software; if your code cannot be forked, you are not an Ephraimite. But I think standards are different: the quick test for an open standard is “Can anyone implement it against the will of the maintainer?” If so, it’s open. Just being able to change the text of the standard is not enough.

  2. Dan Sickles says:

    As fto forkability, I like Richard Stallman’s response to Sun’s open source claims:

  3. Pingback: links for 2006-01-02 at protocol7

Comments are closed.