All UNIX and UNIX-like operating systems keep a running count of the number of seconds that have elapsed since midnight GMT on January 1, 1970, a moment referred to as the “Epoch”.
This count, which hackers call “UNIX time”, or sometimes “the UNIX clock”, is in theory the same on every single UNIX machine the world ’round, and is used for countless diverse but important things, from real-time event scheduling to stamping database records to seeding pseudorandom number sequences.
At 01:46:40 GMT on Sunday, September 9, 2001 (or 21:46:40 EDT Saturday), the UNIX clock will turn 10 digits for the first time ever, as it clicks over from 999,999,999 to 1 billion.
This sort of numerological trivia is precisely the kind of thing that titillates hackers to no end, and it should come as no surprise that more than a few informal parties have been planned all across the world to celebrate the historic moment. While it’s no Y2K, speculation has been abroad for some time that 1e9 Day, as the event’s been dubbed, may expose similar kinds of foolish treatment of date and time values.
Meanwhile, you too can participate at home! If you’ve got a UNIX shell handy, you can try the following to get your very own countdown timer:
$ perl -e '$|++; printf( "\r%010d",1e9-time ), sleep(1) while 1'
Or, in the hackish spirit of the event, you might try the obfuscated perl version, suggested by Nat Torkington and Jon Orwant:
$ yes|perl -ne'$|=sleep printf"\r%010d",1e9-time'
Enjoy, and Happy 1e9 Day! May the next billion seconds of UNIX time be filled with even more innovation and creativity than the first billion!
To be precise, [UNIX time is] 21 seconds less, as of this writing. POSIX requires that
timenot include leap seconds, a peculiar practice of adjusting the world’s clock by a second here and there to account for the slowing down of the Earth’s rotation due to tidal angular-momentum dissipation. See the sci.astro FAQ, section 3.
How will you celebrate 1e9 Day?