Comment Y2038 is Coming, The End is Near, etc. (Score 3, Insightful) 114
Y2K issues were to be anticipated. Maybe not as far off as the Y2038 problem (32-bit time_t) but it was a known issue looming and getting kicked down the road. These are all just singular manifestations of using limited representations for time. The Y2038 problem bit insurance actuarial calculations years ago. Forecasts about a 30 year old's retirement trips the Y2038 problem today. The expected lifespan of a newborn tripped the Y2038 problem years ago. The horizon for the manifestation of the limitation depends on the application. Embedded systems with 20+ year life spans should have worried about Y2038 years ago.
This is not limited to Y2K and Y2038. The Boeing 787 had a time counter rollover which required a reboot every 248 days (https://ancillary-proxy.atarimworker.io?url=https%3A%2F%2Fbetterembsw.blogspot.com%2F2015%2F05%2Fcounter-rollover-bites-boeing-787.html). FAA solution -- reboot every 120 days.
The Patriot Missile System had not a rollover issue but a conversion accuracy issue which led to a rapidly increasing inaccuracy in the tracking gate. (https://ancillary-proxy.atarimworker.io?url=https%3A%2F%2Fwww.cs.unc.edu%2F~smp%2FCOMP205%2FLECTURES%2FERROR%2Flec23%2Fnode4.html)
It is my experience that the inherent limits in a system's base time and interval representations is rarely considered as a risk factor in system design.
Managing time on computers is hard. Whether it is time math, time synchronisation, or just keeping an activity on a strict timeline, they all present challenges when implementing a system.