this post was submitted on 03 Apr 2024
1104 points (96.2% liked)

Programmer Humor

19817 readers
98 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[โ€“] [email protected] 2 points 8 months ago* (last edited 8 months ago) (1 children)

Yeah but also if we're being honest, from a programmer perspective the timezone has no bearing on what you do, and is hence not a problem at all.

After all, much like you translate the language of your UI when displaying in X, you also add Y hours to all times shown in X. Done. You wouldn't even need to persist the zoned time data anywhere, given their static nature you could decide the final timestamp shown at display time, purely on a client, visual, level.

OTOH, daylight saving time turns itself - and timezones - into an utter mess and whoever invented them hopefully is proud of the raw amount of grief and harm they caused the world. It causes all kinds of issues with persistence, conversion and temporal shifts in displayed time due to the ephemeral nature of the +X minutes added. Or not. That's the worst part.

So timezones: Fine, it's just bling bling on display anyways.
DST: Burn it at the stake.

[โ€“] [email protected] 2 points 8 months ago

Yeah, I'm in agreement that DST is kinda pointless and could probably be abolished, but the thread is about abolishing timezones in general (or so I thought).

Abolishing DST doesn't eliminate all the weird issues with "ephemeral" offsets though. Suppose the user wants to set a reminder for a recurring event at 3pm, and then moves to another country. Do you keep reminding them at 3pm in the new time zone or the old time zone? Maybe the reminder was "walk the dog" and the user meant for it to be at 3pm local time, or maybe it was "attend international meeting" and the user meant it to be at 3pm in the original timezone. (This admittedly only happens to calendar apps so isn't something that most applications have to deal with, unlike displaying timestamps in general.)

But other than that, I'm of the opinion that as programmers we're supposed to model the problem space as best we can and write software that fits the problem, rather than change the problem to fit our existing solution. After all, software is written to be used by humans, not the other way round (at least not yet). So if DST is something those wacky humans want and use, then a correct program is one which handles them correctly, and a programmers job is to deal with the complexity.