Main Millennium Bug Discussion

Collapse/Expand Topics

02:59:51 AM Jul 18th 2013
edited by
"So, typically all dates were stored internally as 6 digits (and punctuation was added at display time), so November 27, 1960 was coded as 112760. Now, a month later you can get by adding 1 to the first two digits. The new date is later than the original one. Now, however, say you have a date of November 15, 1992 (111592) and you add eight years to it, you get 111500,"

I don't know how these things were programmed, but if 111592 was stored as a single integer and you added +8, wouldn't you get 111600?
02:48:14 PM Oct 17th 2013
No, most databases stored numbers as text to prevent conversion problems (endian-ness), not too mention the differing interpretations of floats and their precision.
06:21:56 PM Apr 14th 2013
This may be too much of a nit-pick to put on the page, but: the reason programmers used two-digit years wasn't really to save space. Yes, space was at a premium, but not that much of a premium. A programmer desperate for space and using a lot of dates could pack a date into fewer than 6 bytes by encoding it in various ways. Unix, for instance, uses 4 bytes (two less than DDMMYY) to represent the date and time as the number of seconds since Jan 1, 1970. Other methods were used as well that saved more than dropping two digits.

The real reason people programmed in two-digit years is that, until the early 1990s or so, they thought in two-digit years. Checkbooks came with the '19' already printed on the checks so all you had to write was the final two digits. People said they were from the class of '85, and didn't pronounce the single quote. Also, things moved so fast in the computer software world that you were lucky if anyone was still using your program after a year, let alone a couple decades later.

We didn't think about it and leave it out to save space; we just didn't think about it.
07:06:51 PM Apr 20th 2012
It's funny...this trope is the main reason why I always say that I "missed" the Year 2000 celebrations, even though I was in seventh grade at the time. Truth be told, I can't remember very much of that New Year's Eve, except that it all came and went with something of a yawn. Too bad, really, 'cause that should have felt like a milestone.
Collapse/Expand Topics