Sooner than we think?

greenspun.com : LUSENET : TimeBomb 2000 (Y2000) : One Thread

A computer programmer writes in a recent article that a "99" in databases in use since the 70s indicates "end of data" and tells the program to start processing. Starting on 1 Jan 99 some of these old COBOL and FORTRAN programs will begin to crash, a full year before 2000. He says if we get through 1999 with only minor failures, then perhaps management of the companies involved have also corrected the 2000 problem.

-- Joan Troth (troth@rof.net), September 22, 1998

Answers

It'll doubtless happen in some places, but it's probably rare.

On old punch-card input systems, an all-nines card was often(?) used to signal end-of-data. If the fields were dates, then this would show up as 99/99/99 which is not a valid date. Any vaguely competent programmer would FIRST check for 99/99/99 and exit because of end-of- data, THEN check the date for validity and report an error for anything else invalid, such as 30th February or 47th June.

So it's only the totally incompetent who'd first check the date for validity and THEN seize on a particular *valid* date (09/09/99) to mark end of data. (Note: you'd have to punch 090999 in the right columns of the card to mark the end of the deck, rather than grab a pre-punched 999999999... card, so it would also be inconvenient).

Of course, the problem is that totally incompetent programmers aren't and weren't unknown!

A bigger worry is that non-programmers often developed conventions for using "special" dates as flags for things like "never" or "don't know" that weren't considered when the system was programmed. (Again incompetence, this time at a management or systems analysis level). So, it's apparently quite common for 9/9/99 to mean "never", sometimes just to the office staff and sometimes as a result of later hackery to the program as well. Such systems are in for a serious shock in just under a years' time.

-- Nigel Arnot (nra@maxwell.ph.kcl.ac.uk), September 23, 1998.


Besides, there are still those pesky embedded chips that will skrew up on 1/1/2000...

-- madeline (runner@bcpl.net), September 23, 1998.

Moderation questions? read the FAQ