There has been a great deal of talk about the year 2000 and its ramifications for computer systems in the past years. Here is my take on the year 2000 problem (which I will call Y2K for brevity).
First, for those of you who have been living in a cave for the past few years or who are looking at this from a number of years beyond Y2K. The problem dates back to the early years of the computer industry when storage and memory were extremely expensive and had to be saved at all cost (at least as far as the bean counters were concerned). As a result, software was written that used only the last two digits of the year since there were a number of years left before the 19 in front of the year would change to 20. The theory was that by the time the year 2000 came along, none of this software would still be running. This, of course, proved false and as Y2K is only 48 days away, there is still a great deal of this software still running on extremely old machines.
So, why is Y2K even an issue? Well, human nature is basically lazy. That is, if something works, don’t stuff around with it until it breaks. As a result, since some of this original software has been working flawlessly for a large number of years and solving the problems it was designed to solve so the large corporations and even the small companies using such software saw no reason to invest in new software. As a result many systems are still running archaic software.
Now, software for which the source code is still available is relatively easy to patch to work with Y2K. Indeed, most of the legacy software for which the source code still exists has been patched long since to handle Y2K without falling over dead. However, much software has been patched at the binary level without updating the source code and in some cases, the original source code is completely lost anyway. It is these systems that are difficult to update to handle Y2K properly. Unfortunately, these systems are in the majority, not the minority. Many of these systems have not been fixed to handle Y2K even today since it is often easier to build a new system from scratch in such circumstances.
These are the basics of the Y2K problem as it relates to computer systems. These systems mentioned above are not the real problem as they can be fixed with relative ease by fixing the software or creating/obtaining new software which does handle Y2K.
The real unknown is embedded systems. There are many systems that use computer chips in their workings; some of which even have miniature computer operating systems in them. Any of these systems which rely on dates may be vulnerable to Y2K if they are using the old style date system. While it should be a simple case of replacing the vulnerable parts, not all devices which use these systems are known. This last point is particularly important.
Based on these above problems, many so-called experts have been expounding upon the many varied disasters that will befall humankind due to all the computer equipment and electronics in the world going “poof” on Y2K. Wild claims about such devices and a 1976 Ford station wagon failing because it has a date in it to your wristwatch ceasing to keep time as soon as the date becomes January 1, 2000. Now, the 1976 Ford station wagon may have a date in it; it might have a clock that keeps the date. However, that date has nothing to do with the functioning of the car itself; it will run just fine if the clock reads 1000 or 2000 or 1978. Similarly, your wristwatch will still count the time just fine even if it doesn’t handle the date correctly.
There is also the claim that just because common chips that are used in embedded systems have date functions, it does not mean that every application that uses them actually uses the dates. Also, even if it does use the date, it doesn’t necessarily mean that the device actually cares what the date really is. Therefore many electronic systems may contain chips that may be vulnerable to Y2K are not really vulnerable. Also, just because a system such as an engine relies on timing to operate correctly, it does not mean that it keeps time in hours and minutes and years. Engines probably use engine cycles for example.
None of this is to say that nothing at all will happen on Y2K. On the contrary, something will invariably go wrong. However, many of the patently absurd claims will not happen. To see the problems with some claims, consider the following statment:
For someone born in 1966, the computer will have recorded the date as 66 so when the year 2000 comes along, it will be the year 0 so the person will be -66 years old which means the person will be considered dead.
There is a problem with this statement. Most systems will look at that and probably ignore the whole situation as the person will be less than the age for any number of events so it probably be ignored. There is the possibility that the system was programmed to flag such as a data error and demand an operator’s attention. In either case, the person will not be flagged as dead. However, sorcial security cheques, for example, might not be delivered for such a reason.
Patently absurd claims aside, there are also issues that are plausible but which are not likely. For example, the telephone company is not likely to forget to send you a bill for your telephone line although it is possible that their billing system will fall apart. They still have records of who has what phone line in non-electronic form. They can always produce bills manually if necessary. All that means is that your bill will be late. It is also not likely that your telephone service will be interrupted due to “nonpayment”. Indeed, if the computer thinks it is 1900 and your last payment was in 1999, it will consider your account paid for the next 99 years!
Now here is where the embedded systems really come into play. There are utilities such as the telephone company or the gas company that use embedded systems in remote controllers. If these controllers were to crash, they could cause service interruptions. Consider that the utility companies will have technicians on call to handle exactly these sorts of issues rapidly, so even if your utilities get knocked out by such a glitch, they will be fixed in relatively short order. In fact, this will probably be much less of a problem than the ice storm in Ontario and Quebec a while back as the physical infrastructure will still be intact. Of course, if you live in a remote area, you could be without service much longer since you are further from the techical centres, but if you are living in a remote area and do not have contingency plans for the middle of winter, you are asking for trouble anyway since even in a normal year a storm or other disaster could cut you off for a period of time anyway.
There are also dire warnings about nuclear arsenals being set off by bugs in the firmware/hardware in the war heads and launch systems. This may well happen, but is there anything the average consumer can do anything about? Indeed, if it does happen will most of us still be around to worry about it? Even so, the politicians in the western world have been working hard along with technical staff to get all such systems secured before Y2K. If they fail, so be it; there is nothing you or I can do about it anyway. As the sentiment in a prayer I once read goes, “give me the ability to change what I can and accept what I cannot change and the wisdom to know the difference.” This is a case where the wisdom come into play – knowing that we cannot change the nuclear situation so we must accept it and hope for the best.
Now, there is one more factor I have not mentioned so far. That is the human factor in the whole Y2K equation. While the actual equipment running our communications infrastructure is probably sound, picture the following scenario:
Due to the time zone system in use, January 1, 2000 will arrive earlier in the east than the west. Now suppose that somebody in Calgary calls Toronto at 11PM Calgary time. That would make it 1:00AM in Toronto. This Calgarian wants to find out if Toronto melted down due to Y2K.
This doesn’t sound harmful, does it? Taken individually, it isn’t. Now suppose that 100 000 Calgarians call Toronto at 11:00PM and 75 000 of them receive all circuits busy signals. What is going to happen?
You got it, they are going to panic since they have been hearing about the Y2K problem for years now, they will assume that this failure is because Toronto melted down as a result of Y2K instead of the fact that there aren’t 100 000 circuits between Calgary and Toronto available at any given time.
Now, suppose everyone survives that particular bit of panic and midnight rolls around. Now, since everyone is worried about Toronto having melted down and in fits of panic called all their friends to warn them that Toronto didn’t survive, they are going to test everything as soon as midnight passes. Everyone flushes their toilette at 12:01AM to see if the water still works. There isn’t enough water presure to handle this so this experiment fails so they panic and everyone picks up their telephones at exactly the same time to hear dead air; there isn’t enough dial tone to service every single telephone set in Calgary all at once. This sends them into an even bigger panic. Meanwhile, with all the water going down the drain pipes in the apartment towers, the presure blows out the pipes in the basements of these towers. The sewers back up because they cannot handle the volume of water coming from every toilette in the city.
That doesn’t sound very plausible, does it? Now, think about how you would have reacted in that situation before reading the above comments. Still doesn’t sound very plausible? Then you are slightly calmer than the average person. Now think about what all your friends would do in that circumstance. Convinced?
So, what am I going to be doing on New Year’s Eve this year? I will probably be going to bed at about 10:30PM. I will probably be waking up around 7:00AM on January 1, 2000. If there is no power, I will read a book. If there is no heat, I will put on a sweater. If there is no dial tone, I will wait patiently for it to be repaired. If there is no water, I will wait patiently for it to be restored. If there is no time on my wristwatch, I will buy a new wristwatch when business begins after the holiday. If the world was decimated by nuclear failures, I will not even be going to bed on New Year’s Eve as it will have already happened by then. All things considered, though, I will not be panicking just because it is December 31, 1999; I will be treating it as if it were any other New Year’s Eve.
November 12, 1999 CE… UTC