Mar 5, 2020 - Technology

How wrinkles in time mess with our computer systems

Illustration

Illustration: Sarah Grillo/Axios

When the popular free-stock-trading app Robinhood went offline Monday and Tuesday, Twitter wags immediately opined that programmers must have failed to account for this year's quadrennial Leap Day, which fell on Saturday. The firm eventually denied that scenario, pinning the crash on simple infrastructure overload.

The big picture: But it wasn't a bad guess. Calendar quirks have always been a predictable source of software bugs. We think of the measurement of time as a science, but it is also a human art, encrusted with customs, exceptions and historical quirks.

  • Time zones are irregular.
  • Times are a.m. and p.m. except when they're on a 24-hour clock.
  • Different countries format dates differently.
  • To remember how many days each month has, people need mnemonic rhymes!
  • Computers are great at keeping track of all these things, but the people who program them still make goofs trying to account for all of the cases.

Y2K: Two decades ago, a bug associated with the flip of the millennium counter threatened a Y2K doomsday that never materialized, whether because the danger had been overhyped or because freaked-out companies hauled enough COBOL programmers out of retirement to fix everything.

2038: Today, Unix programmers are already preparing for the "Year 2038 bug." Some versions of Unix will break in that year as the number of seconds that have passed since Unix time began in 1970 grows too big to hold in a 32-bit register.

Daylight savings time: The clock's seasonal adjustments used to cause many systems to throw fits. Modern systems handle them smoothly, for the most part — but every time the clocks move forward or back, the brains of your local sysadmins, IT crews, and tech-support teams ache from their old war wounds.

What's next: The U.S. moves its clocks forward this coming weekend. Everybody ready?

Go deeper