The Y2K sequel for Unix time, and why 64-bit systems are mostly safe.
2 min read
The year 2038 problem is a bug in systems that store Unix time as a signed 32-bit integer. That counter reaches its maximum, 2,147,483,647 seconds, at 03:14:07 UTC on 19 January 2038, then wraps around to a negative number that reads as December 1901. Most modern 64-bit systems already avoid it.
Unix time counts seconds since 00:00:00 UTC on 1 January 1970. A signed 32-bit integer can hold values up to 2³¹ − 1. One second after the limit, the value overflows to −2,147,483,648, which corresponds to 20:45:52 UTC on 13 December 1901.
TIMESTAMP type, which is documented as ending in 2038Mostly, on modern platforms. Linux added 64-bit time_t support for 32-bit architectures in kernel 5.6 (2020), and glibc 2.34 lets 32-bit programs use a 64-bit time_t. A signed 64-bit counter won't overflow for about 292 billion years.
int or int32 fields that hold epoch seconds.Is 2038 like Y2K? It is similar: a known date limit that is fixable well in advance.
Will my phone break? Current phones use 64-bit operating systems and aren't affected.
Is Python affected? Python's own integers don't overflow, but it can inherit platform limits on 32-bit systems.
Lab evidence
Facts in this draft were checked on 13 Oct 2026 against the sources listed in the body (official records, publishers, encyclopaedias and named news outlets). No original testing or reporting was done; figures are quoted as published by those sources, fiction and folklore are labelled as such, and any estimate or prediction is labelled as such.
Explore the product
Freelancers and small agencies building sites for local businesses
We ran three typescript-eslint presets on a real open-source TypeScript library and counted every finding and second. The jump to strict was smaller than the jump to type-aware linting, and the findings themselves tell you whether your team is ready.
Summary4 Nov 20267 min read
Both cut a string at a separator, but they fail in different ways. We ran them on Python 3.13.5 to show where partition() is safer and where split() is the right tool.
Summary2 Nov 20263 min read
What changes when you swap sort() for toSorted(), with a real 1-million-item Node.js benchmark and the support table.
Summary1 Nov 20263 min read