Given at BrooklynJS, ManhattanJS, and JSConf 2019
https://www.youtube.com/watch?v=EUzPpXhFmG8
@dcousineauTIME IS A SOCIALCONSTRUCT
View Slide
@dcousineauSOCIAL CONSTRUCTSARE GARBAGE
@dcousineauTIME IS GARBAGE
@dcousineau@dcousineau IS GARBAGEhe/him
@dcousineau
@dcousineau@dcousineau
@dcousineau12pmAug 15th, 2019
@dcousineau12pmAug 15th, 2019UTC-0400
@dcousineau2019-08-15T12:00:00-0400
@dcousineau2019-08-15T16:00:00Z
@dcousineauDaylightSavingsTime@dcousineau
@dcousineauSun, Mar 10 @ 2amtoSun, Nov 3 @ 2am
@dcousineau2019-08-15T16:00:00Z2019-11-04T16:00:00Z12pm in New York11am in New York
@dcousineauArizona is in the Mountain Timezone and does notobserve daylight savings time except in the NavajoIndian Nation.
@dcousineauStandard DST
@dcousineau2019-03-10T02:01:00-07:00“Fun” Fact Quiz
@dcousineau @dcousineau
@dcousineauAmerica/New_York ESTAmerica/Chicago CSTAmerica/Denver MSTAmerica/Phoenix MST …
@dcousineauAmerica/Indiana/IndianapolisAmerica/Indiana/KnoxAmerica/Indiana/MarengoAmerica/Indiana/PetersburgAmerica/Indiana/Tell_CityAmerica/Indiana/VevayAmerica/Indiana/VincennesAmerica/Indiana/Winamac
@dcousineauMaybe Wikipedia can help…
@dcousineau1918–1961
@dcousineau1961–1967
@dcousineau1967–1977
@dcousineau1977–1991
@dcousineau1991–2006
@dcousineau2006–March 2007
@dcousineauMarch 2007–November 2007
@dcousineauNovember 2007–Today
@dcousineauAmerica/New_York:Dearborn & OhioAmerica/Chicago:Jasper, Lake, LaPorte, Newton, Porter,Gibson, Posey, Spencer, Vanderburgh, &WarrickAmerica/Kentucky/Louisville:Clark, Floyd, & HarrisonCounties in Indiana NOT on America/Indiana/*
@dcousineau2019-08-15T12:00:00-0400America/New_York
@dcousineauSo… did we learn anything?
@dcousineauTreat time as if it isirreducibly complex.
@dcousineauTime is a question of wherealmost as much as it’s when.
@dcousineauTreat UTC like it’s merely asynchronization andconversion aid.
@dcousineauAlways preserve presentedoffsets / timezones.Only clone & convert intoUTC if storage requires.
@dcousineauUse ISO-8601 in transit & letthe browser handle the rest.Treat it like a11y, give thebrowser / user control.
@dcousineauBe explicit about contextwith your user.If this is confusing for you, it’sworse for them.
@dcousineauUSE A LIBRARY! Especiallyfor simple arithmetic.date-fns, moment.js, Luxon
@dcousineauWhen all else fails, justmove to Florida. ☀
@dcousineaufin.