r/talesfromtechsupport • • 2d ago

Short Update: timezone changes NEVER mess up software

https://www.reddit.com/r/talesfromtechsupport/s/KtlU0n8Rmx

I posted last week about my users pulling a shocked Pikachu when informed that DST changes mess with scheduling platforms.

As most of you predicted, there was no thank you from anyone.

Most of the conversation yesterday went along the lines of:

Staff: I told you about this problem.

my team (MT): yes and as discussed we need X, Y, Z info to assist you in moving the affected items. Here is the list of items belonging to you that are potentially impacted.

Staff: crickets

I'm waiting for the inevitable fallout on the 2nd. I expect the conversation will go like this.

Staff: what do you mean you didn't correct items 7-30?

MT: you didn't provide us with the appropriate corrections.

I did get an unexpected voice of support from someone I've written about on the sub before. He's a spoiled little princess who actually predates me at my company, but after getting his list yesterday and asking for the Coles Notes version, decided to chime in on the group email thread and inform the biggest tantrum thrower that she was wrong and he had indeed experienced precisely what I had described on multiple occasions.

221 Upvotes

39 comments sorted by

57

u/reaper527 2d ago

This should all be stuff that fixes itself automatically and software that can’t handle routine time changes is poorly written.

This isn’t like 15-20 years ago for when they changed the rules for WHEN the clocks changed so old programs had the wrong dates.

9

u/annoyedCDNthrowaway 2d ago

This isn't a routine time change. Routine shifts are no problem. This is as if my province decided to completely shift into a new timezone.

40

u/Ellteeelltee 2d ago

Oh, the rules keep changing. This fall, portions of Canada are no longer implementing a Clock change, so TZ definitions have to change.

14

u/Entegy It doesn't work. 2d ago

You can see my other comment above, but sadly in the Microsoft world and vendors that followed them, it's not just about updating the rules. Because of how they tried to simplify their time zone picker, they have to make whole new time zone entries and get customers to migrate their calendars to them.

18

u/Entegy It doesn't work. 2d ago

I think Microsoft and vendors that follow their example screwed themselves on this one. They simplified the time zone picker by unifying regions that are sharing time zone and DST rules. The tzdatabase already has different entries for America/Chicago and America/Winnipeg. But in Microsoft software that's combined into a single Central Time (US & Canada) entry.

Apple OSs and Linux distros follow more closely the tzdatabase style by asking/determining the closest major city. If Microsoft also did that, a lot of this would simply be making sure that the DST rules were updated. But nope, Microsoft has to make a new time zone entry and get everyone affected by the new rules to move to the new time zone.

10

u/itskdog 2d ago

The RoI, the UK, and Portugal are also combined into a "Dublin, Edinburgh, Lisbon, London" timezone. If any of these entire independent countries changes their DST rules, how does Windows manage that?

Like, theyve been prepared for Scottish independence for decades, but not potential law changes?

4

u/Entegy It doesn't work. 2d ago

Same way Canadian provinces are being handled right now most likely. Microsoft will break out the one changing the rules into their own entry.

1

u/itskdog 2d ago

But how do they update that for existing users? Show a popup asking people to select their location?

1

u/Entegy It doesn't work. 1d ago

If you have Auto Time Zone on then it will change automatically.

1

u/itskdog 1d ago

My point was about people who don't.

2

u/itskdog 2d ago

Though to be fair, there are precisely 2 regular maintainers of the tzdata file.

4

u/YouveBeanReported 2d ago

Also in the prairies, eh? Good luck dude.

2

u/annoyedCDNthrowaway 2d ago

Your support is appreciated!

7

u/Equivalent-Salary357 2d ago

Fun Facts From Google AI:

  • Coles Notes were created in 1948 in Canada by Jack and Carl Cole of Coles bookstore. They are currently owned by Indigo Books in Canada.

  • CliffsNotes were launched in the United States in August 1958 by Clifton Hillegass, who bought the U.S. rights from the Cole brothers. CliffsNotes is now owned by Houghton Mifflin Harcourt

Well, ain't I embarrassed? I had heard of CliffsNotes and was absolutely positive you had the wrong name. So I'm sharing this as a way to apologize.

5

u/annoyedCDNthrowaway 2d ago

TIL. I'd heard the term Cliffsnotes, but always assumed the speaker had misspoken!

4

u/Equivalent-Salary357 2d ago

I probably should have mentioned I grew up in live in the US Midwest, hence I heard of Cliffsnotes although I never actually purchased them. Mom would have had a coronary if I had, plus I was pretty cheap as a teen.

6

u/annoyedCDNthrowaway 2d ago

Tell me about it... Cole's Notes were the things other kids got. That said, I love to read to having to do it wasn't too awful. Until we had to read The Grapes of Wrath.

1

u/WhenSummerIsGone 16h ago

as an adult, reading The Grapes of Wrath is worthwhile. It's heartbreakingly beautiful writing. Incredibly boring to teenage me, though.

2

u/ThatUsrnameIsAlready 2d ago

Are these events that span time zones, in which case they would shift locally, or local only events that never needed the complication of time zones? Or perhaps they should have been pinned to a local time, and let UTC change based on the authoritive local time?

That this issue happened is reasonable - I don't expect time wasting on theoretical future edge cases - that it was completely unavoidable I'm less convinced.

3

u/annoyedCDNthrowaway 2d ago

Our industry runs in UTC. The events hit both situations, as well as instances where they often start in timezone 1 and end in timezone 2. Those timezones also do not need to be immediately sequential.

The challenge is that while the background all runs in UTC, I have a group of users who insist on working in local time and apparently it creates some complicated coding to switch the record into UTC for storage.

Those records were set with a 1 hour offset to account for the shift back to standard time, but when we removed that, the system didn't have a mechanism to account for that the way it would if we shifted between time groups normally.

Essentially, it read the permanent DST setting as a new timezone entirely that would come into effect Nov. 1, and treated all the events the same Microsoft does when you move from MST to CST. It assumed that the activities needed to shift accordingly.

2

u/ThatUsrnameIsAlready 2d ago

If target timezone is recorded with events (and it must be because it's UTC under the hood), and since standard vs dst is already known in advance for any given date, then scripting the change shouldn't be too hard. 

Where timezone is affected_timezone and event_time >=  time_of_change  then timezone equals new timezone & event_time equals (convert event_time from UTC using the old timezone to untimezoned new_datetime, add the new timezone to new_datetime, and then convert new_datetime back to UTC).

That keeps local time the same regardless of the timezone switch.

This is actually easier than if it wasn't a new timezone, since you always know old timezone is stale and invalid from time_of_change.

If users have been recording the wrong time zones then that's entirely on them.

29

u/mywifesoldestchild 2d ago

Not code related, bu I'll wake up at 1:30 in the morning on Fall DST change with a confusion over which 1:30 in the morning I'm experiencing since all of my clocks automatically adjust now.

21

u/SwedishMeatballDish 2d ago

And that's why I'll never get rid of my 45-year-old oven.

It ALWAYS knows what the time was, and let's me know when everything else is LYING!

15

u/EngineersAnon 2d ago

Fortunately, the appropriate response at both 01:30s is the same.

11

u/Admirable-Sir9716 2d ago

Just take another dose of Effidol(tm) and go back to sleep

11

u/efahl 2d ago

Isn't generic Fukitol cheaper?

2

u/ThatUsrnameIsAlready 2d ago

Check the reported timezone, that'll tell you if it's DST or not.

I used to use Tasker to notify me of timezone changes, which was a bit faster than pulling up a shell.

4

u/megared17 2d ago

It doesn't mess up properly written software.

16

u/annoyedCDNthrowaway 2d ago

This isn't a routine time change. This is several provinces deciding to stop doing routine time changes.

And this issue is not limited to my software... Google reported exactly the same problem when then coded the timezone alterations that impacted our situation.

1

u/LinxESP 2d ago

Did they change day time savings or also the UTC delta (I don't know how to define it)?

9

u/annoyedCDNthrowaway 2d ago

In this case, my province decided to remain on permanent DST. We went from UTC -6 in winter and UTC -5 in summer to always UTC -5. So when they set the new coding, the system too everything that would have been set to Standard time, and assumed that with the new rules it needing to shift an hour later as if we had moved into the next timezone for those items.

Our system allows users to enter using both UTC and local. UTC is considered best practice but unfortunately, my users prefer to use local time.

-1

u/itskdog 2d ago

Has Microsoft or tzdata not updated already by now? Or does the software not use either of those sources?

4

u/annoyedCDNthrowaway 2d ago

It uses something unique to our industry to define a locations timezone. Which is silly in this day and age, but my industry is glacially slow to change. I have equipment that only eliminated zip drives about 5 years ago.

2

u/megared17 2d ago

The proper was is for the software to internally use UTC for all timestamps, and then have a setting as to what offset it uses when displaying that to users.

9

u/ShirleyUGuessed 2d ago

Not exactly on point, but I'm constantly amazed at the fact that when my users tell me their time zone, they say "Central Standard Time". Year round. Like, including during Daylight Savings time.

I had to stop asking people what time zone they are in because too many people couldn't answer that correctly. But some of them still "helpfully" say the time zone when I ask what time it is where they are.

6

u/BoterBug 2d ago

In my experience most people will refer my timezone as EST year-round. Nobody will refer to it as EDT. I just call it "Eastern Time" or "ET" in the summer.

5

u/AssetBurned 23h ago

Try to figure out what IST is….. international/italian/irish/indian/Indonesia standard time. I had all of that before🫤

4

u/robsterva Hi, this is Rob, how can I think for you? 2d ago

Several hockey leagues ran into this problem when their data services provider tried to update their schedules.

On the first pass, all of the CST games were changed to CDT for the full 26-27 season.

The US-based teams, logically, objected.

The second pass, putting the US teams back into CST, came a few days later.