IDG logo

Advertise with InfoWorld

Subscribe Search Home

January 12, 1998 (Vol. 20, Issue 2)

Millennium bug already taking its toll

By Lynda Radosevich

Skeptics tend to dismiss gloomy prophecies that global chaos will ensue on Jan. 1, 2000 when the world's computers, programmed with two-digit year fields, assume it is 1900 and break down.

But tangible date field crashes are already occurring, giving IT managers early warning signals about how nasty and pervasive year-2000 problems are likely to be.

Just ask Jeff Noxon, a contract point-of-sale (POS) network programmer who recently received a new Novus/Discover card that expires in '00. When Noxon tried to use the card at a local dry cleaner, it was immediately declined by a VeriFone POS terminal, which rejected the card as expired without even dialing for authorization.

"[The merchant] just kept trying to swipe my card in vain, and it did not accept my explanation of the bug," Noxon said. "I find this especially annoying in my present occupation as a POS network programmer."

In recent weeks, validation systems have also rejected new Visa and Mastercard credit cards embossed with a '00 expiration date. The validation systems' magnetic strip readers process '00 as 1900 and reject the cards as expired. The merchants either have to call for verbal authorization or type in a 1999 expiration date.

Greg Jones, a Visa spokesman, said his company made a massive effort to avoid this predicament, yet it happened anyway. In 1996, Visa banned its member banks from issuing cards that expired in 2000. During the ban, Visa issued 150,000 such trial cards to bank employees to test transactions, and it encouraged merchants to update card validation terminals. By October 1997, Visa determined that 99.7 percent of the 14 million locations that accept its cards were year-2000-compliant and lifted the ban, Jones said.

Apparently, it is the remaining small slice of noncompliant merchants that is causing the problem, demonstrating that a little year-2000 trouble can go a long way.

"The [credit card] consequences are not earth-shaking, but it is definite proof that we are having these problems," said Ed Yourdon, chairman of the Cutter Consortium, a year-2000 consulting company in Arlington, Mass.

The credit card dilemma is far from an isolated incident. Seven percent of 108 IT directors and managers said their companies have already experienced a year-2000-related failure, according to a December 1997 survey conducted by Rubin Systems for systems integrator Cap Gemini America.

"The failures have been occurring every year in increasing numbers," said Jim Woodward, senior vice president of Cap Gemini America's TransMillennium Services, in Iselin, N.J. "In 1995, one client couldn't issue five-year credit cards; in '96, there were problems with four-year leases; in '97, systems that processed three-year insurance policies had problems; at the beginning of '98 already we've been contacted by a company whose purchase-order system has failed significantly due to a two-year projection of a purchase order."

In all of these examples, the systems had a date calculation field forward-looking enough to hit a '00 date. The programs interpreted the date as 1900 and refused to issue the policy, run the purchase order, or accept the credit card transaction, Woodward said.

At one Fortune 500 financial services company in the Midwest, it took a good year-2000 debacle to kick start the company's millennium project. In early January 1996, the company's consumer loan system encountered the '00 date and sent about 200 customers bills for 96 years worth of interest.

"This is not what you want your credit company to do to you. The public embarrassment and the hit to stock price could have been horrendous," said the company's year-2000 project director.

The company fixed the problem in about one month by expanding the two-digit year field to four digits, only to "blow-up" inter-related systems the next month when the loan system tried to pass off four-digit year fields.

"Now we leave the date at two digits and manage it with a logic call program to treat 00 as greater than 99," the director said.

Other glitches have been occurring for some time that illustrate the dire and not-so-dire ramifications of date-field calculation bugs.

  • In 1993, the Associated Press reported that Mary Bandar, a 104-year old resident of Winona, Minn., turned down an invitation to attend kindergarten. A computer triggered by the fact that she was born in '88, fired off a notice to begin school in the fall.
  • At midnight on Jan. 1, 1997, 660 process control computers that run the smelter potlines at the Tawai Point Aluminum smelter in Southland, New Zealand, could not account for an extra day stemming from the 1996 leap year and crashed. Five pot cells were ruined, leaving the aluminum company with a repair bill estimated at more than $570,000. Two hours later, Comalco's Bell Bay smelter in Tasmania shut down with the same problem, according to reports in the New Zealand Business Herald and The Dominion, in Wellington, New Zealand.
  • Also on Jan. 1, 1997, the millennium bug hit a law enforcement computer in New Zealand. The system, which controls criminal records, driver's licenses, vehicle registration, and more, wouldn't let police set court dates two years hence. Files had to be processed manually, and the system will be replaced by early 1999, according to reports in the New Zealand Business Herald.

    Experts say if there is a lesson to be learned from the problems that have occurred, it is that companies should not assume everything is OK. Even if a company's year-2000 software problems are licked, the bug can show up in embedded chips in devices ranging from oil drilling rigs to pipeline valves to escalators.

    More mishaps are expected soon. Examples such as these are likely to increase in 1999 as business systems gear up for the one-year projections that are very common to U.S. business, such as booking hotels in advance.

    "People have construed the year-2000 problem as Jan. 1, 2000," Woodward said. "Really, we're going to see severe damage occur as of Jan. 1, 1999."

    Additionally, the fixed software may not have been correctly fixed, due to an obscure leap-year rule in 2000: If a year is divisible by four, it is a leap year. If it is also divisible by 100, then it isn't. But, if it is also divisible by 400, then it is a leap year.

    "Not everyone knows that, so in addition to all the crashes we're expecting on Jan. 1, 2000, there's also a lot of concern about what's going to happen on Feb. 29, 2000," Yourdon said.

    Meanwhile, one man is finding an ironic silver lining to all this. Bob Bemer, a 77-year-old former IBM programmer credited with inventing ASCII text and the escape sequence that controls laser printing, came out of retirement last year when year-2000 problems started making headlines. His Richardson, Texas-based company, B.M.R. Software, this month will ship Vortex 2000, a year-2000 fix being considered by Bell Atlantic.

    What drew Bemer out of retirement was ire. He predicted the year-2000 problem back in the 1970s.

    "The programmers didn't use the picture clause right," Bemer said. "The picture clause is my invention, and it just ticked me off."

    The picture clause in Cobol is where a programmer describes the data characteristics for the compiler. Most Cobol programmers set the end year to 99, which means they defined the year field as two digits.

    "It would have been just as simple to say end-year PIC 9999, and we could have avoided all this junk," Bemer said, adding that, nonetheless, he's happy to be spending 12-hour days working to fix it.

    Ted Smalley Bowen contributed to this article.

    Some significant Y2K milestones prior to 2000

    The year-2000 bug is striking, and it's expected to strike the following even harder well before Jan. 1, 2000.

  • Jan 1, 1999: Reservation systems that accept booking one year ahead and business planning systems projecting forward one year
  • April 1, 1999: New York State and some companies' 2000 fiscal year begins, affecting all fiscal systems
  • July 1, 1999: 44 more states and other companies begin their fiscal years
  • Sept 9, 1999: Programmers use 9999 as an end of file indicator, so date may confuse systems
  • Oct 1, 1999: Federal government and many other companies begin fiscal year 2000

    Source: Cutter Consortium

    Copyright (c) InfoWorld Publishing Company 1998