17 Oct 2003 ncm   » (Master)

Do British web servers and browsers, and X servers, and Kerberos peers, exchange magic biscuits?

I see two immediate implications of Bram's Law. First, it means that for things that are, nominally, easy, most likely somebody has implemented it right, and probably lots of people. The problem is just finding the good implementations, and calling attention to them. If the HTTP service that comes with Python stinks, the one in Twisted is probably good. (Disclaimer: This is hearsay, I haven't looked at either.) The community is pretty good at recognizing its best and brightest, and making it easy to find out what they think, so if the competent among us help by keeping lists of competently done alternatives to popular but badly-done code, those among us equipped to tell the difference will use the good stuff. The good stuff might get less community participation, but maybe it doesn't need it so badly, given that it's (nominally) easy. In the extreme case, we can each implement and maintain our own versions of such code. Probably we do already, but who likes extrema? Let's each post a Bram's Law List of obscure but competently-constructed alternatives to badly-done but popular components, and let Google collate them for us.

The second, perhaps subtler, implication is that the law might be the first sound engineering reason for making (what might otherwise be) a simple standard complicated. If it's really hard to get something essential to a standard right, then there will be less temptation to re-implement it badly. The danger, of course, is that the bozos will just dispense with the hard bit. MySQL was built without the essential transaction engine, and became wildly popular. (Of course the soundness of this reason depends on the idea in my previous paragraph failing.)

Evolution 1.4.5 still crashes almost every day. I've never had Mutt crash, not even once. Evo, Galeon, and XFree86 are the only programs I (still) use that ever crash.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!