{"id":21828,"date":"2025-10-27T03:50:31","date_gmt":"2025-10-27T03:50:31","guid":{"rendered":"https:\/\/dailysutoon.com\/?p=21828"},"modified":"2025-10-27T03:50:31","modified_gmt":"2025-10-27T03:50:31","slug":"matt-time-zones","status":"publish","type":"post","link":"https:\/\/dailysutoon.com\/?p=21828","title":{"rendered":"Matt: Time Zones"},"content":{"rendered":"<p>If you like rabbit holes, a wonderful way to spend your Sunday is in the <a href=\"https:\/\/zachholman.com\/posts\">writing of Zach Holman<\/a>, an early engineer at Github and Gitlab.<\/p>\n<p>All are good, but a particular favorite of mine is <a href=\"https:\/\/zachholman.com\/talk\/utc-is-enough-for-everyone-right\">UTC is enough for everyone \u2026right?<\/a> You don\u2019t need to code to appreciate that time is a construct, that has evolved over time. \u201cAt noon in DC, it was 12:08 in Philly.\u201d Time zones introduce particular complexity because, besides obvious things like Daylight Saving Time starting and stopping at different times at different places in history and geography. If you do write code, you\u2019ve probably come across things like <a href=\"https:\/\/www.epochconverter.com\/\">Epoch Time<\/a>.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>The\u00a0<strong>Unix epoch<\/strong>\u00a0(or\u00a0<strong>Unix time<\/strong>\u00a0or\u00a0<strong>POSIX time<\/strong>\u00a0or\u00a0<strong>Unix timestamp<\/strong>) is the number of seconds that have elapsed since January 1, 1970 (midnight UTC\/GMT), not counting leap seconds (in ISO 8601: 1970-01-01T00:00:00Z). Literally speaking, the epoch is Unix time 0 (midnight 1\/1\/1970), but \u2018epoch\u2019 is often used as a synonym for Unix time. Some systems store epoch dates as a signed 32-bit integer, which might cause problems on January 19, 2038 (known as the Year 2038 problem or Y2038).<\/p>\n<\/blockquote>\n<p>I\u2019ve spent far too many hours on the <a href=\"https:\/\/www.php.net\/manual\/en\/function.date.php\">PHP date manual page<\/a> and the related comments (now gone! I used to have a few, they probably retired because they were on earlier versions of the language).<\/p>\n<p>As a bit of lore for Zach he might appreciate, I\u2019ll share that when writing some of the first logging and data processing systems for <a href=\"https:\/\/akismet.com\/\">Akismet<\/a>, I divided the files using <a href=\"https:\/\/en.wikipedia.org\/wiki\/Swatch_Internet_Time\">Swatch Internet Time<\/a> to give me a consistent balance of dividing a day, but still doing things as real-time as possible. The anti-spam learning system would update about every 86 seconds.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you like rabbit holes, a wonderful way to spend your Sunday is in the writing of Zach Holman, an early engineer at Github and Gitlab. All are good, but a particular favorite of mine is UTC is enough for everyone \u2026right? You don\u2019t need to code to appreciate that time is a construct, that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-21828","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/dailysutoon.com\/index.php?rest_route=\/wp\/v2\/posts\/21828","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dailysutoon.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dailysutoon.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dailysutoon.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dailysutoon.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=21828"}],"version-history":[{"count":0,"href":"https:\/\/dailysutoon.com\/index.php?rest_route=\/wp\/v2\/posts\/21828\/revisions"}],"wp:attachment":[{"href":"https:\/\/dailysutoon.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=21828"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dailysutoon.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=21828"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dailysutoon.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=21828"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}