this post was submitted on 29 Jun 2024
888 points (95.0% liked)

Programmer Humor

31968 readers
446 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 7 points 2 months ago

Na let's keep timezones, there useful for humans who generally want time to mean something, but lets ditch daylight savings time, all it does is make scheduling a massive pain twice a year, and messes up everyone's sleep cycle. Without it, timezones would just be a fixed offset from another, minimizing trouble.

[–] [email protected] 4 points 2 months ago
[–] [email protected] 10 points 2 months ago* (last edited 2 months ago)

The notifications in one of our systems is aligned with UTC because it needs to be for a whole bunch of background services to function. Periodically (every couple of years) someone raises a ticket to complain that the time of their notifications is an hour out, and the 2nd line support worker will think "well that's easy, I'll just change the server time to BST". This then brings this whole suite of applications to a crashing halt as everything fails.

[–] [email protected] 3 points 2 months ago* (last edited 2 months ago) (1 children)

OMG, I'm dealing with a developer right now that is dealing with patient collected samples in several timezones, allowing the patients to either enter the time they collected, or use current time, and storing it in UTC time.

We do not receive any timezone data, patient collection data is showing different days than the patient could write on their samples depending on the time of day, and the developer said 'just subtract X hours' (our timezone).... for which not all patients would live in.

I suppose I could, if they'd provide the patient's timezone, but they don't even collect that. Can you just admit your solution is bad? It's fine to store a timestamp in UTC, but not user provided data... don't expect average users to calculate their time (and date) in UTC please.

[–] [email protected] 2 points 2 months ago (1 children)

Depends on what's collecting the information. If it's a website, then the client-side code could most certainly normalize everything to UTC based on the browsers time zone before submitting. That's what I would probably do, if the user's time zone isn't needed or wanted..

[–] [email protected] 2 points 2 months ago

This is actually the best approach.

Obviously they are getting timezone information otherwise the app could only display whatever time the user entered in.

If you want to sort things by the actual time, it's simple and performant if all of the times are in the same timezone, and UTC would be the standard one to use. Pushing the timezone calculations to the client makes sense because the UTC time is correct, it's just a matter of displaying it in a user friendly way, ie. show the time in the user's timezone.

[–] [email protected] 6 points 2 months ago (2 children)

IMO, the biggest problem with timezones is that the people who initially created them were fairly short sighted.

That and there have been way too many changes to who lives in what timezone. The one that boggles my mind is that apparently there's a country in two timezones, not like, split down the middle or anything, but two active timezones across the entire country depending on which culture you're a part of, or something. It's wild.

I still don't know if there's any difference between GMT and UTC. I couldn't find one. They both have the same time, same offset (+0), and represent the same time zone area.

I use UTC because I'm in tech, and I can't stand time formats, so I exclusively use ISO 8601, with a 24 hour clock. Usually in my local time zone, via UTC. We have DST here which I'm not a fan of, but I have to abide by because everyone else does.

My biggest issues with time and timezones is that everyone uses different standards. It drives me nuts when software doesn't let me set the standard for how the time and date is displayed, and doesn't follow the system settings. It's more common in web apps, but it happens a lot. I put in a lot of effort to try to get everything displaying in a standard format then some crudely written website is just mm/dd/yy with 12h clock and no timezone info, and there's nothing you can do about it.

[–] [email protected] 7 points 2 months ago* (last edited 2 months ago) (1 children)

UTC exists as a historical compromise because the British felt that GMT was the bees knees and the French felt differently. The letter order is most definitely a compromise between French and English word order. You can call it Universal Time Coordinaire.

Historically, GMT became the international time reference point because the Greenwich observatory used to be the leader in the field of accurately measuring time. It probably helped that the British navy had been dominant earlier and lots of countries around the world and across time zones had been colonised by the British.

UTC is an international standard for measuring time, based on both satellite data about the position and orientation of the earth and atomic clocks, whereas GMT is a time zone. Nowadays, GMT is based on UTC not independent telescopic observation.

What's the difference? You can think of a time zone as an offset from UTC, in the same sense that a 24h clock time is an offset from midnight. GMT = UTC+0.

Technically, UTC isn't a valid time zone any more than "midnight" is a valid 24h clock time. UTC+0 is a time zone and UTC isn't in a similar sense that 00:00 is a time in 24hr clock and "midnight" isn't.

Of course, and perfectly naturally, I can use midnight and 00:00 interchangeably and everyone will understand, and I can use UTC and UTC+0 interchangeably and few people care, but GMT = UTC+0 feels like the +0 is doing nothing to most eyes.

Fun fact: satellite data is very accurate and can track the UTC meridian independently from the tectonic plate on which the Greenwich observatory stands. The UTC meridian will drift slowly across England as the plates shift. Also, the place in the stars that Greenwich was measuring was of by a bit, because they couldn't have accounted for the effect of the terrain on the gravitational field, so the UTC meridian was placed several tens of metres (over 200') away from the Greenwich prime meridian. I suspect that there was a lot more international politics than measurement in that decision, and also in making the technical distinction between UTC and GMT, but I'm British, so you should take that with a pinch of salt.

[–] [email protected] 2 points 2 months ago

That's quite the lesson you just laid down.

It's actually made things a lot more clear for me. To put it as tersely as I can, UTC is the international time, GMT is a timezone, which also happens to be UTC+0.

So GMT is a place/zone/region of earth, and UTC is a time coordination, with no physical location (beyond the prime meridian, which is where it is tracking the time of).

Awesome.

[–] [email protected] 4 points 2 months ago (1 children)

I know people who actively fight me on ISO 8601. They don't like the way it sorts their files/folders, reliant on whatever behavior the operating system does. Whenever data recovery happens or their files are moved, all the change times are blown out the window and the sorting they expect is blown away.

I'm not yet using a 24-hour clock. But it has me thinking. That's not such a bad transition for 24-hour local time into UTC. Or just using both. At some point the inconvenience of the local will become vestigial and UTC is what remains.

[–] [email protected] 3 points 2 months ago

I use 24h clocks and ISO 8601 dates almost always

Honestly, I'm better at organizing code than I am my actual life

[–] [email protected] 1 points 2 months ago* (last edited 2 months ago)

What if the only enabling factor to getting to Kardashev Type I is adoption of UTC for everything?

Yep, we're doomed by the Great Filter.

[–] [email protected] 27 points 2 months ago (1 children)

Timezones are kind of a necessary evil though, because without them then you'd have to check regions (or zones) to see if 1PM in China is the same thing as 1PM in Australia is the same thing as 1PM in Bolivia.

[–] [email protected] 6 points 2 months ago

Even then, 1pm in Beijing is something different than 1pm in the Tibet since all of China is technically one time zone.

[–] [email protected] 3 points 2 months ago

Is GMT and UTC not the same? I'm happy to not have to code for timezones

load more comments
view more: next ›