this post was submitted on 03 Apr 2024
1085 points (96.2% liked)
Programmer Humor
19551 readers
948 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
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
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
It's not that simple as people has this urge to associate 12pm to noon and 12am to midnight. Just look at china where the whole country is under a single timezone despite spanning from UTC+05:00 to UTC+09:00. People on xinjiang ended up using their own unofficial timezone (UTC+06:00) for their daily activities instead of using china's official timezone (UTC+08:00) because it's inconvenient to them.
Yeah but that is exactly what I mean with habitual. It's a learned association of questionable utility. It can be unlearned and replaced with 0400 is noon or 1600 is noon based on your longitude just as well. Dawn and dusk are dependent on latitude and have to be learned for anything not smack-dab on the equator anyway.
I can see why that would be inconvenient to people, but I would maintain that is only so due to them clinging to a habit.
They just gave an example though of people who made up their own timezone because the official one was bad.
These systems exist for people and if no one other than programmers wants to do the internal calculus of "The sun is setting and they're a quarter of the earths rotation Eastward, so that means they're probably in bed" every time you want to call someone, then we shouldn't make the standard that way.
You also get some things that become way more complicated, like "send the user a notification at the start of the normal working day".
Right now you just look up the timezone in their profile and send it at 9:00, but without timezones, you need a "database of regional conventions for coordinating business hours", which is just a worse way of having timezones.
Timezones exist because they have a purpose. UTC exists because having some sort of coordinated universal time is helpful and people (outside of Greenwich) don't use it because it isn't helpful to them, except in specific circumstances.
It's like abolishing everything except latin1 because Unicode is a pain. Wanting to write your name in your traditional alphabet is just a habit that people can break.
Yeah, and in reply I argued that they did this out of not wanting to change their habit of associating 12 o'clock with noon. Which is in my opinion an understandable impulse but not a good reason to preserve the status quo.
Yeah fair, I'm aware I'm toeing unpopular opinion territory here.
But the standard is like that right now, worse even with DST and other complexities.
Well no you need an offset. Like the user has set +8:30 as their offset, so send the notification at 00:30 UTC. That's not worse than having timezones, that's having timezones but simpler.
Yeah, and some of those purposes are bonkers.
More like getting everyone to use Unicode, but whatever. Like I said I see why it would be unpopular to the point of being unenforceable, but that doesn't mean an unambiguous way of communicating time as the default would be entirely undesirable.
My point is we have that unambiguous system you want. People don't use it except in specific circumstances. Instead of saying those people are wrong, you can look at why they don't use UTC for everything.
People don't use UTC because people aren't usually interested in universal time, they're interested in time of day, which is fundamentally tied to the position of the sun and people's day night cycles.
The people in China who made their own bootleg timezone illustrate that perfectly.
We don't currently have to reason about where someone is physically located to know if they're likely asleep. I'm in UTC-4. It's 15:30. It's 19:30 in London. I know the evening is advanced enough that I shouldn't call my coworker there, but early enough that I can if it's an emergency. I forgot California's timezone, so I googled it, and it's UTC-7, so it's 12:30 there. I should probably wait half an hour to call to avoid the typical lunch hour.
Otherwise I use a tool to look up and see that solar noon in California is around 20:00, so people are probably doing their midday routines then. Except that California shifted business hours so that they're offset an hour from solar noon to reduce energy consumption, which I didn't know.
And what do we do about places like Texas where solar noon varies by more than an hour on different ends of the state? For simplicity, most regions like to synchronize working hours inside their contiguous economic sphere. So I can assume that the state would pass a law relating to what time was considered "convention", since we need schools, businesses, banks and government services to be consistent inside a jurisdiction.
It's important we have stuff like that be uniform, because jurisdictions have laws about stuff like preventing teens from working during school hours, or preventing schools from starting class so early it interferes with children's sleep or staying in session so long it interferes with their evenings.
Texas can just mandate that standard business hours are 14:00 to 22:00.
Thank God they didn't end up having to mandate that the standard business day is split across two different calendar days like California. Imagine the hell of child labor laws when you have to stipulate that teens can't work between the hours of 15:00 and 1:00 the next day unless said scheduled interval begins on a weekend.
Business hours being posted as 00:00 - 03:00, 17:00-00:00 for things like Sandwich shops is my favorite though. "I closed for the night today at 3, but I'll be open again later today in the morning at 17" just has a delightfully complicated inhuman ring to it.
There's a reason people like their days to line up with their days, and we like to base our clocks around how we live our lives where we are, not where the sun in in Greenwich.
I fundamentally disagree that a system that's identical to how we work with timezones but non-standard, like a UTC offset system you describe, is simpler than timezones, which are standardized UTC offsets. At best it's timezones with a different name and more of them.
Latin1 is far simpler than Unicode, and doesn't have conversion issues. It's static and very difficult to get wrong. It's clearly a better match for comparison to UTC-only. It's only downside is that it leaves everyone outside of a small segment of the worlds population to build their own janky system for dealing with their silly human need to reason about time in an intuitive sense/write their names.
It could be worse. What would happen on people that live in UTC+12:00 ? When your friend say "lets meet on Tuesday", which Tuesday it is (because the day changes at noon)? People will resist such majorly inconvenience changes unless the benefit of switching is clear for them. Forcing unpopular changes will guarantee people using unofficial timezone which cause even more confusion down the line.
Given how +12 is at the front of the "date wave" currently they would probably take it to mean the Monday/Tuesday noon.
Yeah fair. To me the benefit is clear, there is no good rhyme or reason to timezones as a totality, we should come up with a better system. A straightforward approach like using UTC offsets seems best.