News & Articles
Year 2000 Perspective
By Robert Stinnett (email@example.com)
Who would have thought that the passing of a day would bring about such turmoil. As the clock ticks from 11:59pm into 12:00am on January 31, 1999 the world will be forever changed. One of the challenges we face in the computer age is how to deal with this change in our world.
For months now you have probably read and seen articles dealing with the century date problem, commonly referred to as the Y2K problem. The stories we hear range from minimal impact to total annihilation when nuclear warheads detonate by accident. How can a society be so divided on the impact of a problem such as this? Why do we have such varied analysis of a problem that can possibly only have one solution?
Before we get into details, let us examine what exactly is the century-date problem. When most of the systems being used in business today were written, some dating back to the 1950s, computers were not as powerful nor cheap as they are in 1998. Programmer time, or the person writing the code, was far cheaper than computer time. A programmer had to make use of what was presented to him or her that was in the best interest of the business and within budget and time restraints. Storage costs for data were expensive and cutting off 2 bytes from a record could save a company hundreds if not thousands in data processing costs.
When the question was brought up of how to store the year the obvious solution was to store it like most people write it, 09/14/64. Two digits for month, day and year. After all, it wasnt like the century would be changing that often and surely by the time the year 2000 was here these systems would long be replaced and rewritten. Considering that you may have a system that has thousands upon thousands of records storing the date field, and adding the century to each date field required 2 bytes, you could potentially save hundreds of megabytes of data storage. Those hundreds of megabytes translated into some serious cash back in the 50s, 60s and 70s.
So the years went by. Programmers routinely continued to write the date as a 2-digit year as computing time and cost went downward. Even up the early 1990s most applications stored the year as 2 digits. Old habits were very hard to break. And, of course, surely this system would be replaced by the time January 1, 2000 rolled around.
However, programmers and information professionals began realizing there was a problem around this time. Some systems that must look into the future (those dealing with financial annuities, life insurance, etc.) began to produce some strange errors. That 10-year bond being purchased in 1994 all of a sudden wasnt going to mature until 1904 and the interest the bank would pay you would be in the millions of dollars. Something wasnt balancing correctly and when it comes to money, big business pays attention.
The problem, of course, was the 2-digit years. 94 + 10 = 04 because the computer simply dropped the hundreds place from the field. So IS departments began approaching management about the problem and more often than not were told "just work around it for now" and "we are not going to rewrite the system just because a few transactions are not working". After all, in business you never re-invent the wheel. Programmers continued to stress the importance of what was happening. As the 1990s rolled on more and more problems began appearing. Credit card terminals were rejecting cards with expiration dates past 2000, Life insurance companies began seeing policies that, according to the computer, had been in effect for 145 years, and a variety of other problems.
By 1996 most companies were fully aware of the problem at hand. Even the government realized that many of its systems, including the IRS, would not be century compliant. The rush was on to fix them. This would be one project that must come in on time. There would be no time extensions or chances to do it a second time. Business began to reallocate dollars, move employees and restructure its thinking to get this problem solved. Ironically, it was the same management that years before told its programming staff to "not to worry" about it. Now, as each day ticked by, the cost to solving the problem rose.
So here we are, 1998, and roughly one and a half years before the big ball drops and we all get used to writing 20XX as the year instead of 19XX. What will be the impact on business and society as a whole? Should, as some suggest, we begin building bomb shelters and stocking up foods as we did during the cold war era of the 1950s?
One of the big misconceptions by most people is that anything computer-related depends on the date. This is not correct. Around 60% of all computer applications and devices are date-independent. They could care less if it was January 5, 2001 or July 14, 1932. Systems like this include most household appliances that have microprocessors in them (Microwaves, ranges, intelligent refrigerators), industrial systems (such as water regulation, electrical distributing plants), and routine computer applications (Most word processors, graphics programs, your web browser to an extent).
Date dependency is only there when an application or device needs to perform some routine or function depending on what date it is and there is a calculation involved. Items such as your VCR probably have a microprocessor that it uses to determine what date and time to begin/end programming, but it really does not do date calculations. A VCR could safely refer to the year 2020 as "20" without harm.
When date calculations become involved, though, the story changes. Systems such as a computer application that must calculate ages of people for statistical purposes would look at my birthday (January 12, 1974) and then subtract the current date (04-12-2002). Normally, on this date, I would be 28, however the two digit fields would trap us in this situation. The computer would calculate 02-74 = -72, so depending on how the program stored numbers Im either 72 or 72 years old. The good news is I now qualify for the senior discount at the movies, the bad news is I get a notice from the IRS that I havent paid taxes in about 50 years.
The date also comes into play when dealing with financial applications. Lets say I owe $300 to XYZ Credit Card. They calculate interest monthly, and the current interest rate is 8.5%. Now Ive carried that balance for exactly 30 days and the credit card company decided its time to charge some interest so they can keep their lights turned on. I made the charge on December 12, 1999. It is now January 13, 2000. So the computer goes in and computes: 00 99 = -99 * ($300 * 1.085) = -32,224.50. So thanks to my wise spending habits, the credit card company sends me a check for close to $32,000 dollars. I am very happy. On the flip side, if they drop the negative, I get a statement showing I owe $32,000 dollars and if I dont pay they will be sending Guido over to my house to "talk to me". Ouch.
One of the points I cannot stress enough is to analyze the situation. The century change will cause problems, but companies are working on it and many have achieved or are nearing completion. The company I work for has put in many man-hours and resources to the project and I am pleased to say is nearing completion with most systems currently compliant.
It is natural, as history shows, that the change of the millenium causes panic and prophecies to be told. We all sometimes are scared of what the future may bring. Yet, we will progress into the next century and time will march on. There are steps that need to be taken and a lot of work is yet to be done. I encourage you to write your financial institution, insurance company, even utility company and ask them how they are progressing on their century date effort. Most companies have prepared literature and statements defining their progress towards this important event.
At home, evaluate your PC and software. Contact the companies of software you use, such as Microsoft and Quicken, or visit their websites and see how they are coming with century compliance. Many programs, including Intuits Quicken and Microsoft Excel, are century compliant in the latest releases of the software. In fact, several software vendors are sending out notices to their registered user lists informing them of their compliance.
The Year 2000, or century date problem, is only as threatening as you make it to be. As long as you stay on top of it and make sure those institutions you deal with are working towards compliance, the only problems you might have are catching yourself writing "1900" instead of "2000" on your checks.
Robert Stinnett is a programmer for Shelter Mutual Insurance Companies in Columbia, Missouri. He welcomes your comments and can be reached firstname.lastname@example.org.
Return to the Articles index
|Home, Links, Awards, Help, Map, Poll, Newsgroups, Online Chat, Mailing List, Search|
|Tips & Tricks||Guides||Bugs & Fixes||Themes||Reviews||Site Contents||ActiveIE|
1998-1999 The Active Network. All rights reserved.