I'm working on some ideas for finance or news software that deliberately
updates infrequently, so it doesn't reward me for reloading it
constantly. I came up with the name "microhertz" to describe the idea. (1
microhertz ≈ once every eleven and a half days.)
As usual when I think of a project name, I did some DNS searches.
Unfortunately "microhertz.com" is not available (but "microhertz.org" is).
Then I went off on a tangent and got curious about which other SI units are
available as domain names.
This was the perfect opportunity to try node.js so I could use its
asynchronous DNS library to run dozens of lookups in parallel. I grabbed a
list of units and prefixes from NIST and wrote the following script:
Out of 540 possible .com names, I found 376 that are available (and 10 more
that produced temporary DNS errors, which I haven't investigated). Here are a
few interesting ones, with some commentary:
exasecond.com – 32 billion years
petasecond.com – 32 million years
petawatt.com – can be produced for femtoseconds by powerful lasers
gigakelvin.com – possible temperature of picosecond flashes in sonoluminescence
giganewton.com – 225 million pounds force
kilosecond.com – 16 minutes 40 seconds
kilokelvin.com – 1340 degrees Fahrenheit
picohertz.com – once every 31,689 years
femtogram.com – mass of a single virus
yoctogram.com – a hydrogen atom weighs 1.66 yoctograms
zeptomole.com – 602 molecules
To get the complete list, just copy the script above to a file, and run it
like this: node listnames.js
Along the way I discovered that the API documentation for Node's dns module
was out-of-date. This is fixed in my GitHub fork, and I've sent a pull
request to the author Ryan Dahl.