The inability of some older computer programs to process dates correctly after midnight on December 31, 1999.
Computer programmers in the 1960s and `70s abbreviated the date field to two digits, partly to save space and partly because they were convinced that the software would be rewritten before the abbreviated date ever became a problem. So Y2K isn't really a bug; the programmers and designers did it on purpose.
This means that older software reads 99 as 1999, and as the year 2000 begins, it will interpret 00 as the first day of 1900.
Dates and calculations based on dates are used in almost all business, sales, accounting, and commercial software, much of which was written in computer languages no longer in common use. Without expensive and time-consuming modifications and testing, these systems will at best provide unpredictable results after January 1, 2000; at worst, they will simply fail to operate.