this post was submitted on 01 Mar 2024
137 points (98.6% liked)
Rust
6005 readers
3 users here now
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Wormhole
Credits
- The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Even just sticking with UNIX timestamps and relying on a library, dealing with time zones still sucks. Inevitably, your backend and frontend libraries will have some difference in some case that matters for some customer. And it won't happen just after release, but some months down the road when one country somewhere changes their laws and your libraries don't get updated in time, or maybe there's a bug like in the OP.
Madness lies everywhere when talking about time.
We should all do ourselves a favor and follow UTC time everywhere. There's still leap seconds and leap days to deal with, but so many problems just disappear if everyone uses the same time. The sun may come up at 20:00 and go down at 09:00, but your stores can just adjust their hours and it's totally fine. You won't ever have to worry about missing a meeting because the organizer's software and yours got out of sync, and you'll never have to mentally convert times on a call.
It's a small price to pay, but for all our sanity, just use UTC time.
The issue is that the notion of "tomorrow" becomes quite hard to express. If it’s 20:00 when the sun rose, when does tomorrow starts? In 5 hours ?
Most people are flexible about that already. If you stay up to ten past twelve, do you say "I really need to get to bed now, I have work tomorrow" or do you say "I really need to get to bed now, I have work today"?
The same will be true for morning and evening in everyday speech, it follows your sleep schedule, which follows the sun. Just like summer can already mean July or December, depending on your longitude.
I wasn't clear enough. But in a contry where the sun rise at 20:00, the weekday looks like:
And phares like "let's meet on Tuesday“ without hour indication could either mean end of day 1 or start of day 2. Likewise "let's meet the 20th” (assuming the 20th is a Tuesday) could either mean end of day 1 or beggining of day 2.
--
And alternative be to have
Which solve the issue of "let's meet on Tuesday”, but not “let's meet the 20th”.
Yes, that's one actual problem that is not covered by everyday speech as it is in use today.
I think it would be very quickly solved by language evolution. E.g. we'd switch to something like "the evening on the 20th" or "the third day next week" (weeks are defined by the presence of weekends, just like they are today). But nonetheless it's a valid argument.
Edit: even today weekends cover multiple days. However you define a weekend now can probably be used to define a day in the global UTC system.