Guides
12 — How time zones actually work — the mechanism, the history, and the specific ways software gets it wrong. Written to be read once and remembered, not to rank.
How time zones actually work
A time zone is not a slice of the globe — it is a named set of rules about what a clock in a particular place has read, does read, and is scheduled to read. That distinction is the whole subject.
What UTC really is, and how it differs from GMT
UTC is not a time zone. It is the reference standard every time zone is defined against, maintained by around 450 atomic clocks, and it never changes for daylight saving — which is exactly why systems use it.
Why daylight saving exists and who abolished it
Daylight saving was introduced to save fuel during the First World War, kept for reasons that have shifted every few decades, and is now being abandoned country by country as the evidence for it thins.
Scheduling across a twelve-hour gap
A twelve-hour gap has no good meeting time, and no amount of grid-shading changes that. The teams that manage it well stop trying to find one and change how they work instead.
The UTC offsets that are not whole hours
Around a fifth of the world lives on an offset that is not a whole number of hours from UTC. Software that assumes otherwise is not slightly wrong for those people — it is 30 or 45 minutes wrong, which is worse.
The 2038 problem, explained properly
Systems storing time as a signed 32-bit second count run out of room in January 2038 and wrap to December 1901. Most modern platforms fixed this years ago; the exposure now is embedded, legacy and serialised data.
ISO 8601, and how to write a date unambiguously
ISO 8601 exists because 03/04/2026 is March in America and April everywhere else. Writing 2026-04-03 removes the ambiguity, sorts correctly as text, and is what every API should accept.
How to run a standup across many time zones
A daily standup works because everyone is awake at once. Past about a six-hour spread that stops being true, and the honest fix is to change the format rather than to keep shifting the time.
Time zones in code, a practical guide
Almost every time zone bug traces to one of four mistakes. This is what to do instead, in JavaScript, Python, Java, Go and SQL, with the reasoning rather than just the rule.
Why EST is ambiguous, and what to use instead
Time zone abbreviations are informal labels with no governing body and no uniqueness guarantee. IST is India, Ireland and Israel; CST is America, China and Cuba. Use IANA identifiers instead.
The International Date Line, and why it bends
The International Date Line follows 180° longitude only loosely — it detours around Kiribati, Russia and the Aleutians, and countries have moved themselves across it for trade reasons.
Why India runs half an hour off UTC
India runs at UTC+05:30 because it split the difference between two proposed zones. Nepal runs at UTC+05:45 partly to not be India. Every unusual offset has a story, and most of them are political.