Year 2000 Problems
by
There is a considerable amount of coverage being given to the Year 2000 problem in the press at the moment (where it is sometimes referred to as 'The Millennium Timebomb'). This is coupled with an ever-growing tide of panic that the world is going to stop because computers will not work on 1/1/00. This is mostly hype but that is not to say that there isn'’t a real problem.
After December 31st 1999, computers won't know what year it is.This sounds insane. It sounds like a Science Fiction story.
It just happens to be very true.
Here's why.
Many computer systems around the world have software that accepts dates, performs date calculations and exchange data containing dates. Unfortunately some of this software is incapable of dealing with dates for the year 2000. There are three types of problem:
Two digit datesMany dates are written as 31/01/96 (UK & Europe) or 01/31/96 (US). In 2000 the two digit year code becomes 00. To calculate the actual year a lot of software added the value 1900 to the two digit year code. This will no longer work in 2000 as the software will still obtain 1900 as the actual year. Computer programs that use two digit fields for date information will fail or return inaccurate results (which may be worse than failing). For example, accounting systems use date fields for tracking overdue invoices. Invoices that are overdue in December 1999 may not seem to be so in January 2000 - they may appear to have 99 years still to run. Critical overdue invoices may be missed causing severe cash flow difficulties.
Six digit datesMany systems (especially old systems written in the 1970s and 1980s) have a requirement to compare two dates to decide which is older. A simple way to do this was to take the date (for example, 31/01/96) and to convert it into a simple code for example, 960131. Comparing two dates is then simply a matter of comparing 2 numbers - something computers can do very quickly and easily. Unfortunately comparing pre- and post-2000 dates using this technique will deliver the wrong result. For example, 01/01/00 will come out as OLDER than 31/12/99 (since 991231 is bigger than 000101).
Leap year calculationsComputers employ certain formulae to determine whether or not the year is a leap year. These formulae might be affected by the Year 2000 date change. The first calculation is to determine if the year is divisible by 4. However, if the year is also divisible by 100 then it is not a leap year UNLESS it is also divisible by 400. Some computers have not implemented this calculation completely and problems may ensue. In the Year 2000 systems that simply divide by 4 will work correctly, since 2000 is divisible by 4. This will only work if the date stored is 2000 and not 00.
The problem is further exacerbated since much of the software in systems today was written in something called assembler code (which is harder to correct) and to poor (or no) coding standards, making the problem hard to find. The assembler code presents particular problems since a variety of weird and wonderful techniques have been devised to save memory and time when processing dates - something that was important when the software was written and storage space was expensive.
At first glance, this may not seem to be too serious, until you get your first bank statement of the new year, you find transactions listed in a curious nonchronological sequence, with all those from 2000 preceding those from 1999. Moreover, your $1,000 deposit made in late December has earned almost 100 years of interest, and so you have a balance of $500,000. Don't be too quick to spend it, however. The next day your Electricity bill arrives, and you owe $100 million. And when the phone bill comes in, that Happy New Year call you placed just before midnight has been charged as 60 million minutes. Then the library sends you a notice of some seriously overdue books.
As 1997 unfolds, interest in Year 2000 stocks is certain to become more feverish. A great many people are going to make lots of money. And an even greater number of investors are going to lose their shirts. More ominously for the investment community, the Year 2000 problem will affect the stocks of not only those companies directly involved in addressing the issue. Experts warn the entire computer industry may be reshaped in the next two or three years, and many companies that depend on computers to do their business may also be affected profoundly.
It affects more than just interest calculations. It affects all information based on time. When will your driver license expire. When will your credit card expire. When will this drug no longer be safe? When should this machine undergo regular maintenance? When was this product built? How long has this invoice been overdue? Has this subscription expired? All of these calculations are based on the date, and if the computer does not know what date it is, then these calculations are no longer possible.
According to de Jager (year 2000 computer expert) and others, the resources available to deal with the problem are already stretched to the limits. Even though most major computer players such as IBM have set up large divisions of dedicated staff to help their customers and hundreds of small specialist companies have been created, there are not enough human resources to do the work. By summer, companies that have not started the process of code conversion are probably not going to make it in time by the Year 2000, and may be facing potentially crippling systems failures that could seriously impact their earnings.
Unless they are fixed... All computer programs... Everywhere in the world... Will go on strike on January 1st 2000... Can you imagine... just for a moment... the chaos this would cause? There would be no air traffic, no traffic lights, no lights in your company, companies could not produce goods, no goods delivered to the stores, stores could not send you bills, you could not send bills to anyone else. Business would come to a halt.