Ruby Till the End of Time...
or, more precisely, Monday, January 18 22:14:07 2038 Eastern Standard Time. But give the very next second a try... ``` puts Time.local(2038,1,18,22,14,8) ``` Yikes! That's the limit when you start at the Epoch and count the seconds using 31 bits. It surprised me, as this was something I bumped my head against on UNIX so long ago (Frightfully, I'll have seen all of those 31 bits of time! _knock on wood_.) Not too big a surprise though, since it is all C under the covers, as Eero Saynatkari reminded me. I had wondered if I was working with an out-of-date (no irony intended) version of the Time class, but it's clear it's a real issue. Maybe there's a well-used ruby mechanism to get around this, or maybe it'd be a useful exercise to write one. Or perhaps I should just start printing T-shirts with "The next world starts at `1/18/38 22:14:08 EST`" on the front? Mike Schneider put it well: "Y2K was amateur's day's. The epoch rollover day is coming."