Improved unobtrusive linked select boxes

Here’s a problem that crops up regularly in Web interfaces: having a dropdown whose available options depend on another dropdown. The canonical example, if you like, is the date selector: Select date Month JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember Day 01020304050607080910111213141516171819202122232425262728293031 This has the obvious (though not serious) problem that one can select, say, February 31st. We’d like to catch…

A crypto standards manifesto

Our very best examples of crypto standards in commonplace use are so poor it's no wonder that developers end up hand-rolling their own broken alternatives. It's time we offered them something better.

JSON and JSON-RPC for Erlang

About a month ago, I wrote an implementation of RFC 4627, the JSON RFC, for Erlang. I also implemented JSON-RPC over HTTP, in the form of mod_jsonrpc, a plugin for Erlang's built-in inets httpd. This makes accessing Erlang services from in-browser Javascript very comfortable and easy indeed.

An Alphabetical Google Zeitgeist

I’ve installed Firefox 2.0 on most of the machines I work on daily now. Its use of google suggestions surprised me when I first saw it, but I’ve grown to find it somewhat useful on occasion now. It suggested the following experiment (not in so many words, of course): assuming that the suggestions it supplies…

RFC 1982 limits itself to powers of two unnecessarily

RFC 1982 defines a “Serial Number Arithmetic”, for use when you have a fixed number of bits available for some monotonically increasing sequence identifier, such as the DNS SOA record serial number, or message IDs in some messaging protocol. It defines all its operations with respect to some power of two, (2^SERIAL_BITS). It struck me…

Rabbits, rabbits, rabbits

We’re proud to announce that the project we’ve been working on for the past few months, RabbitMQ, has been released. RabbitMQ is an AMQP server written using Erlang/OTP. Check it out at – or you can go straight to the downloads page for sources and binaries.