Bug of the Century

By on Jan 11, 2023 in Technology

Readers of a certain age might recall the buildup to Jan. 1, 2000, as an exercise in high drama.

The object of concern was the so-called Y2K bug, the fear that hardware and software systems would stop functioning if they interpreted Jan. 1, 2000, as the first day of the year 1900. The issue was a legacy of computer programs from the 1960s, when engineers used a two-digit code for the year, omitting “19” to save data storage space.

Bug of the century and data and computer programs

2000 was comfortably far away then. But as that year approached, the concern grew among experts that the faulty interpretation of “00” would wreak havoc on everything from national defense systems and energy grid infrastructure to home mortgage calculations and factory operations.

Corporations and governments formed task forces, planned and tested for years leading up to 2000. Large businesses in the U.S. spent an estimated $100 billion creating Y2K compliant programs. Boeing conducted a series of test flights with systems simulating a 2000 rollover to safeguard its 10,500 jets in service worldwide. AT&T spent $650 million to bolster its phone system. There was a fair amount of worry, too; IBM attributed its 9% fourth-quarter earnings drop in 1999 to large corporate customers delaying computer purchases.

Smooth start to the millennium

On Jan. 1, 2000, everything held together with only minor glitches attributed to Y2K. The U.S. Federal Housing Administration listed incorrect dates on a few reports. A Berlin opera company’s system made people born in 1995 appear to be 95 years old, rendering their parents ineligible for government-mandated subsidies. A video store in New York state foisted a $91,250 charge on a customer who, according to their computers, returned a rented movie 100 years late. There were some airline flight delays and a few other snafus across various industries.

But ballistic missiles remained in their siloes, bank vaults didn’t swing open, airplanes – including one carrying President Clinton’s Y2K czar, who flew commercial on New Year’s Eve in a show of confidence – reached their destinations, and businesses and governments returned to work en masse on Jan. 3, 2000 (Jan. 2 being a Sunday).

Debate continues as to whether the extensive preparations were necessary to head off disaster or if the concerns were overblown. After all, some national governments spent little on Y2K preparations with few ill effects. But whatever the case, could the Y2K scenario play out again?

Actually, it already has.

More Y-bugs emerge

First came Y2020, which ironically arose from a fix devised for Y2K. Most programmers working up to 2000 rewrote program system components, databases and data sources to use four-digit years. Others instead chose 20 as the “pivot year,” with data containing a two-digit year between 00 and 20 being treated as post-2000 and years between 20-99 interpreted as referring to the previous century. Utility bills dated 1920 and parking meters in New York City declining credit card payments early in 2020 were among the documented consequences of the short-term option.

Then there was Y2K22, the designation for a programming flaw in Microsoft’s malware-scanning engine that caused some Microsoft customers’ Exchange servers to stop processing emails on Jan. 1, 2022. The software provider quickly delivered a fix.

So are there any foreseeable such events coming up? Yes – and the next potential big bug, referred to as Y2038 or Y2K38, is just 15 years away, in early 2038. That’s when many computer operating systems that store time as the number of seconds since midnight on Jan. 1, 1970 – a date arbitrarily chosen for convenience – will run out of space to store the next second in many computer systems. Since they won’t be able to decipher between the year 2038 and 1970, some experts say, they might go into negative counting up from -2,147,483,647 to zero.

After that, mark your calendar for the year 10000, when the Y2K problem crops up again as computers potentially could struggle with the extra digit the year will require.

Knowledge accumulation will be valuable

Why can’t these types of problems be resolved once and all? Because they are examples of “how software engineers have to balance efficiency with quality every day,” according to Greg Lavallee, VP of technologyfor online news publication Slate.

“In some jobs you make something and then move on, but software is built on top of libraries of other software that run on systems composed of even more software that run on hardware. Inefficiencies and trade-offs in every one of those systems pile up over time. Eventually, developers have to convince their superiors that they need to stop working on new features and start fixing the underlying infrastructure,” Lavallee says.

Fortunately, those on the front lines of Y2K accumulated a body of knowledge that will be highly useful to those charged with fixing future issues. As time winds down to Y2038, for example, “there is no need to lose any sleep over it. Y2K educated us to think ahead of our past technology mishaps and prepare for a future full of technological innovations,” says business technology provider iPoint of Fort Collins, Colo.

But even if some consider the worry over the original Y2K to have been overblown, someone more closely attuned than most to its potential harm believes the degree of diligence was just right. “If nobody had done anything, I wouldn’t have taken the flight,” said John Koskinen, the Clinton Administration’s Y2K point man, referring to his travel on the last night before 2000.