Unix Year 2038 problem and the art of underestimating
Summary
This Runtime Arguments episode explains the Unix year 2038 problem, comparing it to Y2K, and shows how 32-bit time representations affect timestamps across systems. It dives into database timestamp types (Postgres, MySQL, SQLite, DuckDB) and file systems (ext4, xfs, btrfs) and discusses a range of overflow bugs (GPS, NTP, 787, Deep Impact, Snowflake IDs) and leap-year quirks. It ends with reflections on maintainable software and avoiding maintenance-through-obscurity practices.