The Year 2000 (Y2K) challenge is primarily about the problems caused by
representing dates in two-digit fields. Because memory and disk space were historically far more
expensive than they are today, programmers sometimes abbreviated year fields in applications, data, and microchip programs.
As we move into the new century, this programming convention results in sizeable calculation errors if one assumes
the two digit field belongs to the wrong century.
In a simple illustration of what can happen, we see that a calculation that uses a Year 2000 date, represented as "00", gives drastically
different results when we assume "00" means "1900" rather than "2000".
2000 - 1998 = 2 years
1900 - 1998 = -98 years
The Year 2000 Problem is also about a range of other issues.
Programs that use the digits "99" or "00" to mean special
things such as "invalid date" or "demonstration account" fail.
Programs that do not take into account that the Year 2000 is a leap
year report inaccurately. Actually, the Year 2000 Problem
spans a period of close to three years:
the year 1999 (the "99" problem)the year 2000the early
part of the year 2001 (there are 366 days in the year 2000, not
365)
The common denominator is that
software or hardware may calculate the time or date incorrectly and
return a false value.
The results of miscalculation may cause a process to abort, machinery to stop, and data to be ignored or
corrupted.
In practice, the Year 2000 problem falls into three general categories:
- Distributed Systems: personal computers, workstations and
departmental servers
- Embedded Systems: equipment controlled by computers or computer chips
- Outside Dependencies: outside parties who provide us with goods,
services or data
For more information on the nature of the problem,
refer to our list of Other
Websites devoted exclusively to Y2K or providing interesting
perspectives.
Next Step: Knowing Your Risk