|
|
Subscribe / Log in / New account

A fork for the time-zone database?

By Jake Edge
September 28, 2021

A controversy about the handling of the Time Zone Database (tzdb) has been brewing since May, but has come to a head in recent weeks. Changes that were proposed to simplify the main database file have some consequences in terms of time-zone history and changes to the representation of some zones. Those changes have upset a number of users of the database—to the point where some have called for a fork. A September 25 release of tzdb with some, but not all, of the changes seems unlikely to resolve the conflict.

The time-zone database is meant to track time-zone information worldwide for time periods starting at the Unix epoch of January 1, 1970. But, over the years, it has accumulated a lot of data on time zones and policies (e.g. daylight savings time) going back many years before the epoch. As with anything that governments and politicians get involved with, which time zone a country (or part of a larger country) is in, whether it participates in daylight savings time (DST), and when the DST switches are made, are arbitrary and subject to change, seemingly at whim. Tzdb has been keeping up with these changes so that computer programs can handle time correctly since 1986 or so, when it was often called the "Olson database" after its founder, Arthur David Olson.

Merging time zones

Back in May, tzdb maintainer Paul Eggert proposed two changes, one of which was winnowed out during the discussion. The other was to merge zones (identified by location strings, such as "Europe/Berlin") that have the same post-1970 history under a single name. The entries that got merged out would be maintained as links to the merged zone and their pre-1970 history would be moved into the backzone file that is also distributed with the database. Which zone name would be the "winner" is based on the rules embodied in the tzdb theory document; the most populous choice would be the main zone, while the others would be relegated to the status of links.

The maintainer of the Joda-Time library for date and time handling in Java, Stephen Colebourne, disagreed strongly with the change and asked that it be reverted. One of the main problems is that programs using tzdb and looking at pre-1970 dates for places that lost out in the merge will get incorrect time-zone information. The pre-1970 time-zone information for those regions will, effectively, be lost, he said:

[...] many places (eg Anguilla, Antigua and Aruba) are now sharing time-zone history, and that history is **from some other zone**. That seems completely unacceptable.

While I understand the motivation to remove the burden of pre-1970, that cannot come at the cost of giving a place the history of somewhere completely different.

In another message, he pointed out other problems that he saw with the changes, which are partly political in nature:

For example, Norway's and Sweden's time zone history is being wiped out in favour of that of Germany. Can no-one here see the political sensitivity in that?

This has a very serious impact on Joda-Time because it normalizes time-zone IDs. (It treats a Link as the key to the normalization, so anything at the weak end of a Link is replaced by the ID at the strong end. You might complain that it shouldn't do that, but it has operated that way for 20 years...)

This code:

  DateTimeZone zone = DateTimeZone.forID("Europe/Stockholm");
  System.out.println(zone);
will print "Europe/Berlin" if this change is not reverted. I consider this to be catastrophic.

Since Berlin and Stockholm (Oslo, also, as mentioned elsewhere) share the same post-1970 time-zone history, they would all get merged under "Europe/Berlin" as Berlin is the most populous. The pre-1970 history for those countries (Sweden and Norway) would get moved to the backzone file; the data is still available, but many applications have gotten used to getting accurate historical information without consulting backzone. For his part, Eggert is trying to solve an unfairness problem within the database:

Why should we maintain Norway and Sweden's time zone histories, when we don't maintain the histories for Guangdong, KwaZulu-Natal, Thanh Hóa, or Uttar Pradesh? Aside from politics, these regions are similar: although all the regions have distinct timestamp histories with data that I can cite, all the regions can be merged into other tzdb regions (Norway into Berlin, Guangdong into Shanghai, etc.) if we consistently limit tzdb's scope to regions that differ after 1970. Given all that, why should Norway and Sweden continue to be special?

These are not particularly-obscure examples, as Guangdong etc. all have more people than Norway or Sweden do. It would be political to continue to focus on Norway and Sweden while excluding Guangdong etc. purely for reasons unrelated to timekeeping.

He also pointed out that Joda-Time already has to deal with these kinds of merges; earlier releases, including the 2021a release from January, have merged zones. "Whatever techniques people use for these longstanding links should also work for the new links." Eggert is convinced that he is solving a real problem here:

The current patch was not prompted by purism. It was prompted by a complaint from a user who made a good point about the politics of tzdb 2021a, which can reasonably be interpreted to favor countries like Norway etc. over countries like Kosovo etc. Rejecting this kind of complaint and saying "we've always done it that way" is not a promising path forward.

While he believes that users will not really be affected by the changes and that the merge process (which has been ongoing for a number of years in a slower, less-visible manner) is working well, some disagreed. Derick Rethans, who maintains the date and time handling for PHP, Hack, and MongoDB, said that the cleanups are making things worse, in part because they ignore backward compatibility. Colebourne was even more blunt:

Let me be clear - this change cannot stand. The reliability of TZDB has declined considerably over the past few years, but it is time to say enough is enough. This is where the line in the sand needs to be drawn.

Part of the problem is that currently backzone has a fair amount of poor quality data that got shifted out of the main database long ago for that reason. Moving well-researched historical data into that file (for, say, Sweden) makes it difficult to distinguish the two. Eggert said that, currently, the database can be built either with or without the backzone data, but it's an all-or-nothing choice; that could perhaps change moving forward:

For example, if a downstream user wants the 'backzone' entry for Europe/Stockholm which is well-documented, but doesn't want backzone's America/Montreal entry because it's not well-attested and is most likely wrong, the user could specify a list of backzone names that includes Europe/Stockholm but excludes America/Montreal. I think it would not be too much work to add something like this to the tzdb code.

A problem with that approach is that applications may just generally consult whatever tzdb the operating system has installed. Today that means they will get proper time-zone information for, say, Norway on pre-1970 dates, but down the road they would not, unless the operating system builds a version including some of the data from backzone. Different choices of exactly which data to include could easily create incompatibilities between systems for pre-1970 dates.

Charter breach?

On June 3, Colebourne formally requested a reversion of the time-zone merging because he said it breached the RFC 6557 charter. For one thing, the TZ Coordinator (i.e. Eggert) "has not taken into account the views of the mailing list" as required by the charter. Furthermore, the cleanups are not within the scope of the charter, he said.

Multiple people spoke up in support of Colebourne's message, though not all of them agreed that Eggert's plans were a breach of the charter. The clear consensus in that thread, though, was that the changes should be reverted so that some other solution could be found. Maintainers of the date and time code for multiple projects were opposed to the changes, though perhaps not as an official position of the project, at least yet. While the backzone was mentioned, it is not truly a workable solution for projects like PostgreSQL, as pointed out by Tom Lane:

However, the Postgres project is finding itself in a hard place precisely because we *didn't* adopt backzone. We reasoned that the default set of zones was the preferred thing and thus would be the most likely to remain stable. Now, not only is the default different (which perhaps we could live with), but there's no way at all to get the old default. That's not okay, and it seems to me to fly in the face of most understandings of software backwards compatibility, never mind any tzdb-specific rules.

Eggert did not directly address the breach claim, but a few days later posted a compromise idea that would provide a build flag to create the database in two different ways: as it was before the merges and as it is with them. But the question then becomes: which is the default? Many applications do not build the database, but use it as distributed in the tarfile, Colebourne said. Eggert was not opposed to providing an alternate tarfile, but did not seem inclined to revert the merges that he proposed.

On the other hand, Colebourne and seemingly everyone else participating in the thread are willing to work on some kind of technical solution that solves the problems, but think that the current merges should be reverted first. There are ways to derive the two different views into the data, Colebourne said, but that requires keeping the existing data in the main database file. That file can be processed to automatically do the merges as Eggert wants, but that the reverse is not true, Colebourne said. In another message, he described the situation as an impasse, saying that there had been many requests for reversion and "no requests to retain it".

There are technical solutions available to reduce the amount of data published to downstream users, but the starting point must be a fully populated database, not one that is logically broken. The next action must be to revert. Then we can agree on any technical measures necessary.

Colebourne started a thread on what data tzdb should contain. It described the kinds of data present in the database, how they are used, and the problems that need to be addressed with them. It offered up a proposal based on his plan to automatically process the file to create the merges for regions that share post-1970 history, but to retain the existing data so that pre-1970 history did not move to backzone. The proposal was received positively, though there was some constructive criticism; Eggert did not really participate in that thread, however.

Samoa

For a few months, that is where things stood. The development version of tzdb had the merges Eggert proposed, along with various other fixes made along the way. On September 13, Eggert said that a new release was not imminent in response to a query about the status of the merge changes. But, then, along came Samoa.

On September 20, Geoffrey D. Bennett posted a notice that on September 15 Samoa had decided to stop switching to daylight savings time. That meant that tzdb needed to change to reflect that—and before the September 26 DST-switch date. As Eggert put it: "That's not much notice".

Later that day, Colebourne posted "Preparing to fork tzdb". The imminent release that seemed likely to contain those changes meant that a fork was needed in order to maintain the zones as they are in the 2021a release, he said. He would prefer that Eggert revert the changes, but:

In the event that the tzdb maintainer does not revert, consideration must be given to forking the project. The purpose of the fork would initially be to maintain the tzdb data set as it was prior to the dispute. This would then be released in parallel to the original tzdb to ensure that downstream projects do not each do their own thing (ie. to minimize incompatibilities downstream).

Colebourne asked if there was support for such a fork and whether there were people or organizations willing to assist. For the most part, the reaction to the idea of a fork was unfavorable; there were exceptions (Lane and Rethans, for example). Eliot Lear noted several downsides, including confusion among users and implementers, as well as fragmentation of expertise between the two. He suggested proposing changes to RFC 6557 as a way forward. In a somewhat similar vein, Emily Crandall Fleischman suggested invoking the procedure to replace the coordinator as a better alternative than a fork.

Eggert said that the fork would be discriminatory and that it would take a lot of work to fix the fork:

Such a fork would arbitrarily discriminate against countries like Angola and Niger, and in favor of countries like Norway and Sweden.

A primary goal of the recent patches was to avoid racial or national preferences that were present in the previous setup. Arguably these preferences were not intentional, or were apparent and not real; however, that's not an argument I would want to defend.

He suggested working together on technical solutions to resolve the problems that stem from the changes. He also objected to the idea that the data was getting "wiped out" by the changes. But, as Lane pointed out, including the backzone data "does *not* reproduce what was formerly the default set of zones". He said that it might be technically correct to argue that the data is not going away, but that does not really reflect the reality of the situation:

I'm all for improving equity in tzdb's coverage, but I think it should be done by adding coverage for underserved areas, not removing data from areas that had been well-covered. And let's make no mistake: removing data from the default build is removing data, for many downstream users who won't have an opportunity to make their own decisions about what their platforms provide.

Colebourne renewed his call for a reversion. Like Lane, he believes that adding more data is the solution to the problem, but another possibility would be to remove all pre-1970 data from tzdb by moving it to backzone. In the meantime, the path forward is clear in his mind:

The *only* good faith move you can make right now is to revert the patch. I'm quite happy to discuss practical solutions once that is done. If 2021b is released with the disputed patch then the fork will occur, and you as TZ coordinator will have directly caused the fork.

As suggested, Colebourne also polled the list to see if there was a consensus that a change to the coordinator is needed. The results of that were a resounding "no", which he acknowledged in the thread. His June appeal to the Internet Engineering Steering Group (IESG) about a breach in the charter was answered on September 22. Murray S. Kucherawy said that he disagreed with Colebourne's arguments, though that is not necessarily the final answer if he wishes to pursue it further. Colebourne said that both of the formal options for relief had been tried and failed:

The potential options remaining are to fork the project or to solve the issue. For the avoidance of doubt, my preferred option would be to solve the issue.

He noted that there was strong support for the idea of releasing 2021b with just the minimal changes needed to support the Samoa change, then taking a week or so to calm everything down and start to work on other solutions. He asked Eggert if he would do so, but it is perhaps not surprising that Eggert declined. He is concerned that the discrimination problems are now more visible because of the dispute, so he needs to act now:

Unfortunately, the equity issue has broadened and is now visible outside our little community, and I really and sincerely doubt whether it'd be a good idea for us to do nothing about it now. We need to establish that we are fixing the problem and are not deferring action to a never-never land of arcane bureaucracy, and we need to do so in terms that will be clear to outsiders.

He did compromise to some extent by proposing to only merge nine zones for 2021b, rather than the 30+ he proposed to begin with. That would provide evidence that progress is being made, while avoiding the biggest problem area:

[...] the idea is to revert most (but not all) of the objected-to changes. In particular, this will revert the changes to Europe/Oslo and Europe/Stockholm, which have drawn the most objections. The idea is to take the first step now, and to take more steps in future releases (which should not be distant-future releases, as we need to continue to make and exhibit a good-faith effort to fix the problem).

That was not acceptable to Colebourne, again unsurprisingly. But meanwhile, the clock was ticking. Other proposals were made; Russ Allbery wanted to reframe the debate by changing the "naming layer", while Lane tried to find a way to maintain the existing set of zones (and all of their historical data) going forward. Colebourne summarized the whole issue regarding pre-1970 data, while attempting to be even-handed; that led to yet another enormous thread, though he asked that only actual corrections be posted. He also put out a lengthy blog post about the dispute.

2021b release

On September 25, Eggert released version 2021b of tzdb with the merges of nine zones as his amended proposal indicated. He followed up the release announcement with a justification for the release and the choices made in it. Eggert simply sees the 30+ changes he proposed in May as the endgame for a process that started in 2013, though he did acknowledge problems with making changes to so many zones at once, thus the reduction to nine for 2021b.

Historical data is mostly only used by astrology programs, he said, and it is "typically grossly inadequate for realistic use outside the named location". Tzdb focuses on accurate data for 1970 and beyond; his efforts to merge zones is part of that. Now that the fairness issue has come to the fore, it is time to deal with it:

Norway and Sweden have triggered concerns, much more so than similar changes made (for example) to Angola and Congo in tzdb 2014g.

[...] It's a bad look for us that so much concern about Norway and Sweden has appeared on this mailing list, even though hardly anybody seems to have cared about Angola and Congo. It'll be an even worse look if we ignore this issue weeks, months or even years after it's been made clear to us.

[...] With all this in mind, issuing 2021b now is a significant step toward equity in tzdb. It will let us say that we are moving toward a fair process, and will give us the opportunity and motivation to improve on that process and to address and balance the various other concerns that have recently appeared on the mailing list.

As might be guessed, Colebourne was very unhappy with the release.

In summary, I am livid with the high-handed approach you have taken wrt the release of 2021b. Despite near unanimity of the mailing list requesting you to release 2021a+MinimalChanges, you progressed 9 out of the 30 link merges based on a rationale that you acknowledge is not universally accepted.

He said that he would be taking a few days away from the issue, but planned to "start a positive discussion as to what the next steps can be" after that. In his blog post he noted that he would be looking into alternatives, such as perhaps moving a fork of tzdb under the Unicode Common Locale Data Repository (CLDR) project. It turns out that Eggert is not opposed to CLDR being involved in some fashion. Perhaps some kind of compromise can be found in that direction.

The dispute spanned multiple, gigantic threads in May, June, and September. The call to fork tzdb also spawned several heads-up emails to LWN; thanks for those. It is the most visible thing to happen in the normally quiet tzdb arena since the 2011 lawsuit against Olson and subsequently moving tzdb under the Internet Corporation for Assigned Names and Numbers (ICANN) .

It is a little hard to see how users of tzdb are served by making pre-1970 zone information worse for some places, even if those places had been "elevated" in status incorrectly along the way. Dumping that information into the backzone file is tantamount to losing it completely, though the historical record of those moves could be used to reconstruct things. Perhaps a separate "historical tzdb" project is needed that better serves the needs of astrologers and others who have needs for that kind of information. It would be plausible to use the existing tzdb contents as at least a starting point—perhaps more than that.

The timing crunch caused by Samoa's late decision on DST changes was not only disruptive for tzdb, but also for residents of Samoa, as Eggert noted. Two weeks is not a lot of time to get the word out, even outside of the computer realm, but many computers and devices did not magically update to 2021b, so they switched to DST as (previously) scheduled.

It is also unfortunate that the coordinator took the opportunity to lock in these controversial changes on (relatively) short notice over the vehement opposition of some. However inequitable the zone choices in 2021a (and before) were, things had been that way for a long time; disrupting users and developers to create a kind of fait accompli is not a particularly good look either. There are already questions on the mailing list about what distributions and other tzdb users should do with the changes. Taking a bit more time to come up with a scheme that addressed all of the concerns, then making all of the changes at once using that mechanism in a month or two hardly seems burdensome—or unfair—but here we are.



to post comments

A fork for the time-zone database?

Posted Sep 29, 2021 0:01 UTC (Wed) by tux3 (subscriber, #101245) [Link] (10 responses)

The Debian changelog for tzdata states:
* Cherry-pick patches from tadata-2021b until the upstream situation gets less confused:
- 01-no-leap-second-2021-12-31.patch: No leap second on 2021-12-31 as per IERS Bulletin C 62.
- 02-samoa-dst.patch: Samoa no longer observes DST.
- 03-jordan-dst.patch: Jordan now starts DST on February's last Thursday.

The urgency with which the equity issue is being addressed after a long period of status quo seems well-intentioned, but ultimately disruptive enough that downstreams will have needed to delay the change anyways, so it seems upstream could have addressed the 'needing to establish that we are fixing the problem' desire by establishing a deadline for the change, without that deadline necessarily having to coincide with the Samoa change.

I trust the Debian maintainers to save me from unexpected compatibility breakage, but it seems unfortunate that the eventual result here still seems to be sunsetting data of unfairly high quality into a non-default file...

Considering that tz data is not a zero-sum game (unlike, say, allocation of funding), solutions that attempt to improve equity solely by taking away the extra good, without much focus on improving what's lacking, generally feel pretty unsatisfying.

A fork for the time-zone database?

Posted Sep 29, 2021 7:09 UTC (Wed) by cpitrat (subscriber, #116459) [Link]

The irony of complaining that Samoa is doing the change without notice and himself willingly pushing a disruptive change that could have waited longer without proper notice.

A fork for the time-zone database?

Posted Sep 29, 2021 8:32 UTC (Wed) by dveeden (subscriber, #120424) [Link] (6 responses)

According to https://bodhi.fedoraproject.org/updates/FEDORA-2021-b3ed2... it looks like Fedora isn't going to cherry-pick

A fork for the time-zone database?

Posted Sep 29, 2021 8:54 UTC (Wed) by nim-nim (subscriber, #34454) [Link] (4 responses)

That will only work till the change hits RHEL and @rh customers start complaining (especially government RH customers that won’t take the relocation in another country lightly).

It is incredibly offensive to merge different political entities from outside. That some could not defend themselves in the past does not mean others won’t. Moreso because of some (primarily US) political agitation not shared in other countries (which have their own political issues to tackle).

Leveling down has never been a road to success.

A fork for the time-zone database?

Posted Sep 29, 2021 19:07 UTC (Wed) by fuhchee (guest, #40059) [Link] (2 responses)

Perhaps some view equity as more important than success.

A fork for the time-zone database?

Posted Oct 10, 2021 6:13 UTC (Sun) by rlhamil (guest, #6472) [Link] (1 responses)

Then add more separate historically accurate data for the under-served rather than removing usual access, if not the data itself, for the supposedly over-served.

That would strive for both accuracy and balance; genuine "equity" should not reduce accuracy for anyone.

A fork for the time-zone database?

Posted Oct 10, 2021 17:57 UTC (Sun) by Wol (subscriber, #4433) [Link]

I'm personally thinking, separate the master database from the active one.

Why has he gone for 1970? Okay, that may be the Unix base date, but why is he dragging Unix history into this? Surely the number of people who care about going back to 2010 are pretty much the same as those who care about going back to 1970. By his logic we might as well decide to go back only a decade.

MOST people don't give a monkeys about historic data. Some people need to be able to go back a year or two. Others need to go back as far as possible.

Just make it easy, at the user level, to generate the active database from the master. Then we don't care about detail too much in the active database, but we care strongly about accuracy in the master.

Cheers,
Wol

A fork for the time-zone database?

Posted Sep 30, 2021 6:41 UTC (Thu) by cpitrat (subscriber, #116459) [Link]

The fix is easy: those countries need to change their timezone to be different, just for the sake of being different.

A fork for the time-zone database?

Posted Sep 30, 2021 6:03 UTC (Thu) by dvdeug (guest, #10998) [Link]

As of today, Debian unstable isn't going to cherry-pick either.

A fork for the time-zone database?

Posted Sep 30, 2021 6:54 UTC (Thu) by aurel32 (subscriber, #7059) [Link] (1 responses)

This is the changelog for oldstable, stable and testing, where we want to avoid big changes that might lead to unexpected bugs. That said, unstable currently has tzdata 2021b, we will see if they are actual bugs.

The problem that distributions are facing is not due to the drop of pre-1970 data, but rather the merge of timezones from different countries, and the impossibility to present users with a list of timezones matching their country. These links between ISO 3166 country code and timezone is progressively removed and the links in "backward" do not provide this information.

A fork for the time-zone database?

Posted Sep 30, 2021 10:12 UTC (Thu) by LtWorf (subscriber, #124958) [Link]

But remember that in EU countries are now free to do whatever they want with DST, and in Sweden there has been never ending talk of just using +2h all the year instead of +1/+2.

So what if now I have to pick Berlin and then in a couple of years sweden changes and does permanent DST? I'll have my account set on berlin and when sweden appears again I'll have a wrong clock?

The fact that they are on the same time today doesn't mean the elected government will not decide it's best to change things.

A fork for the time-zone database?

Posted Sep 29, 2021 0:39 UTC (Wed) by itsmycpu (guest, #139639) [Link] (1 responses)

> It's a bad look for us that so much concern about Norway and Sweden has appeared on this mailing list, even though hardly anybody seems to have cared about Angola and Congo.

No, independently of whatever happened before or after there or elsewhere, that is not a "bad look" but the healthy and necessary response to a grave mistake (assuming the article comes anywhere close to describing the real situation). It is a good look that this concern exists, even if other concerns are perhaps lacking.

Pre-1970 data is still important (even if not to everyone, as otherwise it could just be removed completely), and you simply cannot take valid data for whole countries away or out of sight, and replace it with invalid data. You cannot even think of doing that as long as there is any other option at all.

A fork for the time-zone database?

Posted Sep 29, 2021 7:12 UTC (Wed) by cpitrat (subscriber, #116459) [Link]

Generalized to software, the situation would be breaking an existing feature many people worked on for years because another feature is not supported.

A fork for the time-zone database?

Posted Sep 29, 2021 1:11 UTC (Wed) by felixfix (subscriber, #242) [Link] (12 responses)

This whole kerfuffle seems pretty strange to me. My impression is that the maintainer perceives the problem as the unfairness of some countries having better historical data than others; and the solution is to degrade those with better historical data, so as to remove the taint of superiority and inferiority. This smells of the Harrison Bergeron approach to solving problems: reduce everybody to the lowest common denominator.

If I have this wrong, apologies. If I don't, well, maybe the maintainer needs to stop trying so hard to solve the world's problems by making everyone equally inferior.

A fork for the time-zone database?

Posted Sep 29, 2021 3:29 UTC (Wed) by sub2LWN (subscriber, #134200) [Link] (5 responses)

> reduce everybody to the lowest common denominator.

Just set all clocks to UTC: problem solved, although sunrise might happen at 5 P.M. now (more or less, as this rock keeps wobbling around the Sun) :-)

A fork for the time-zone database?

Posted Sep 29, 2021 3:36 UTC (Wed) by pbryan (guest, #3438) [Link]

"Captain's Log, Stardate 1512.2. On our third day of star mapping, an unexplained cubical object blocked our vessel's path. On the bridge, Mr. Spock immediately ordered general alert..."

A fork for the time-zone database?

Posted Sep 29, 2021 10:50 UTC (Wed) by taladar (subscriber, #68407) [Link] (3 responses)

While I would be in favour of that that wouldn't solve the issue of historical timezone data at all.

A fork for the time-zone database?

Posted Sep 29, 2021 17:58 UTC (Wed) by sub2LWN (subscriber, #134200) [Link] (2 responses)

> that wouldn't solve the issue of historical timezone data

Yes, it wouldn't just be resetting all the clocks in the world: there would be many logs and datasets to convert initially. However, once all dates and timestamps are converted to UTC, "timezone data" ceases to mean anything practical in the present, past, or future: a recorded timestamp was either _the_ universally correct time or not. Not that the histories would be discarded or completely meaningless, but they would become completely academic: history books of legislative trivia, not something you might expect to grapple with during your next automated software update. :-)

And whether the time of events is recorded accurately is the responsibility of whoever maintains the records, not the IANA: if my system clock is incorrect by several years (which does happen from time to time, especially after certain types of power loss), so none of the timestamps on my system happen to be accurate to any reasonable degree despite any political decree, that's only my fault and not visible to any external organization.

Similarly, many "hours of operation" signs would need to be reprinted to account for seasonal variance in opening/closing time of stores, etc., since local "daylight savings" would no longer be achieved by arbitrarily manipulating our timepieces. A store could open at 4 P.M. instead of 5 P.M. (and close at 0 A.M. instead of 1 A.M.) depending on the season.

A fork for the time-zone database?

Posted Sep 29, 2021 19:15 UTC (Wed) by felixfix (subscriber, #242) [Link] (1 responses)

No one will ever convert 99% of the historical time logs, and there could be legal repercussions for even touching them.

A fork for the time-zone database?

Posted Sep 29, 2021 20:07 UTC (Wed) by sub2LWN (subscriber, #134200) [Link]

> there could be legal repercussions for even touching them.

If legislators pass a measure for Universal Time Normalization, there could be legal repercussions for _not_ creating updated versions of official records! (The old ones could be preserved too, to keep a thorough record of their inherent historic inequities.) I'm not very serious about this, but was imagining what a "lowest common denominator" approach to ongoing global timekeeping could be like, and some of the ramifications.

Maybe a media review committee could be tasked with figuring out the best disclaimer to put on copies of films such as High Noon (1952) to caution people against the dangers of localized timekeeping.

A fork for the time-zone database?

Posted Sep 29, 2021 6:03 UTC (Wed) by epa (subscriber, #39769) [Link] (2 responses)

The translated strings for internationalized programs have much better support for German than for Bengali. This is discriminatory since there are more Bengali speakers than German speakers. Unless someone steps up to translate more free software into Bengali, the only way to fix this systematic unfairness is to remove most of the German translations.

A fork for the time-zone database?

Posted Sep 29, 2021 7:15 UTC (Wed) by cpitrat (subscriber, #116459) [Link] (1 responses)

And English is better supported in many projects. Let's remove all strings that are not translated in every language on the planet.

A fork for the time-zone database?

Posted Sep 30, 2021 1:22 UTC (Thu) by devkev (subscriber, #74096) [Link]

And let's remove them in a release that's being urgently issued to fix a buffer overflow.

A fork for the time-zone database?

Posted Sep 29, 2021 16:06 UTC (Wed) by HenrikH (subscriber, #31152) [Link] (1 responses)

Sounds more to be that the maintainer is arguing that the tz database is not really designed to handle pre-1970 data and that merging zones will lessen both the database size and the maintenance work.

A fork for the time-zone database?

Posted Sep 30, 2021 11:29 UTC (Thu) by immibis (subscriber, #105511) [Link]

and yet, the data is still kept, in another file?

A fork for the time-zone database?

Posted Sep 29, 2021 19:10 UTC (Wed) by fuhchee (guest, #40059) [Link]

amen brother

A fork for the time-zone database?

Posted Sep 29, 2021 1:35 UTC (Wed) by itsmycpu (guest, #139639) [Link] (1 responses)

Maybe Angola and Norway should respond by moving DST one week ahead... ;)

A fork for the time-zone database?

Posted Sep 30, 2021 10:16 UTC (Thu) by LtWorf (subscriber, #124958) [Link]

So finally in norway it'd match the USA DST and there would not be the 1 week of mess that happens every year when scheduling a meeting is harder than usual :D

A fork for the time-zone database?

Posted Sep 29, 2021 4:21 UTC (Wed) by rsidd (subscriber, #2582) [Link] (23 responses)

I'm puzzled at the mention of "history" for Uttar Pradesh (India). It has been part of Indian Standard Time since 1906, decades before it was even called "Uttar Pradesh". All of India has been under IST since 1955. Does the TZ history go back that far? And is it important that it should?

Astrology

Posted Sep 29, 2021 7:28 UTC (Wed) by tialaramex (subscriber, #21167) [Link] (22 responses)

The key word in the article is "astrology". Astrology is nonsense, but it's a particular type of nonsense you can insist on using very precise astronomical data for and then pretend that somehow _now_ it's not nonsense and the people who weren't using sufficiently precise astronomical data are to blame for the results that show it's nonsense. Rinse and repeat.

From the looks of it, once again, the tzdb is being held hostage by people who think that what matters is that their astrology program's nonsense output is the "right" nonsense output and it's important that this doesn't change, and too bad if that wastes time and resources for those of us who don't believe in their nonsense.

Plus, apparently Joda Time silently destroys round tripping and its author very much would rather the raw data takes responsibility for concealing this behaviour rather than needing to either persuade their users it's a feature and that's supposed to happen or ship a fix which would be embarrassing.

Astrology

Posted Sep 29, 2021 8:08 UTC (Wed) by eru (subscriber, #2753) [Link] (3 responses)

I'm sure there are other uses for historical TZ data besides astrology. The proposed change looks culturally and historically insensitive, and just causes tons of needless controversy, without clear benefits. On my Fedora system, "du -s -h /usr/share/zoneinfo/" reports only 5Mb, a pittance on today's disk sizes, even on embedded systems.

Astrology

Posted Sep 29, 2021 11:27 UTC (Wed) by hmh (subscriber, #3838) [Link] (2 responses)

No, It is not a pittance on the small embedded systems at all. Standard fare there is 4 to 16 MiB NOR FLASH on the ones that are supposed to run Linux.

But those don't use tzdb at all.

Just use the sha512 to name the files with real contents (object-store like) and have every time zone a symlink farm to them.

If only it was that easy...

Astrology

Posted Sep 29, 2021 12:45 UTC (Wed) by eru (subscriber, #2753) [Link]

OK, on very small systems it matters, but then you don't use the TZ database at all. On a bit larger systems that can support the database, it is unlikely to matter very much whether the size is 3 Mb or 5 Mb.

I like your suggestion about how the compiled data should be stored. It automatically optimizes, if two source time zones happen to be identical in some given version of the database.

Astrology

Posted Sep 29, 2021 13:12 UTC (Wed) by PhracturedBlue (subscriber, #4193) [Link]

This seemed like the obvious answer to me too...why not just have all relevant codes link to an uncontroversial hashed file. There would be no politics, no priority, etc. Why isn't it 'that easy'?

Astrology

Posted Sep 29, 2021 9:12 UTC (Wed) by nim-nim (subscriber, #34454) [Link] (6 responses)

Accurate timing of past events is not just a matter for astrology.

For example, if you wanted to analyze past electricity use to design future “smart”, “green” or whatever power grids, you‘d better make sure your past DST info is right as when people go to work or return home changes the whole distribution pattern, (so much that’s why DST was invented in the first place).

More so if you want to cross-check data around areas with different time history.

Astrology

Posted Sep 29, 2021 11:37 UTC (Wed) by bluca (subscriber, #118303) [Link] (2 responses)

Is data before 1970 really useful for that purpose?

Astrology

Posted Sep 29, 2021 14:53 UTC (Wed) by nim-nim (subscriber, #34454) [Link] (1 responses)

For infrastructure projects, it’s not as if one could procure data somewhere else than in the past. Time moves a lot slower for anything that involves masses of steel and concrete at country level. You extrapolate from historical data because as imperfect as it is it’s way better than pure guesswork.

Astrology

Posted Sep 29, 2021 14:55 UTC (Wed) by nim-nim (subscriber, #34454) [Link]

(also it is very common to re-analyze historical data with new models to check their accuracy).

Astrology

Posted Oct 10, 2021 7:53 UTC (Sun) by ssmith32 (subscriber, #72404) [Link] (2 responses)

It's tangential, but shouldn't you be normalizing everything into UTC for such purposes?

People will still be arriving and leaving at the same time, just in one timezone, which seems much easier to reason about, from the perspective of a grid that crosses multiple zones.

Also, while the buildings don't change that fast, I imagine usage varies wildly from pre-1970 patterns... And large commercial buildings (e.g. skyscrapers) older than 1970? How many of those really exist?

Astrology

Posted Oct 10, 2021 18:12 UTC (Sun) by Wol (subscriber, #4433) [Link] (1 responses)

> It's tangential, but shouldn't you be normalizing everything into UTC for such purposes?

Why? Einstein said all time is relative, don't make one zone absolute. It was bad enough when Magellan went round the world and couldn't understand why everybody else was a day wrong in their calendar. What are the space station astronauts going to when they come home after 6 months and their UTC isn't the same as everyone else's?

MOST people don't have anything to do with timezones. MOST people have difficulty (including programmers) dealing with timezones.

As per Einstein time depends on the observer. And how many systems do you know, with historic time data, that have no concept of time zone? Most of them? The ONLY special time zone is the one you're in. And it's only special because YOU ARE THE OBSERVER.

Just define time as being 24 hours a day, clock time as the time from the preceding midnight OF INTEREST (so a night shift can quite happily end AFTER midnight eg 30:00 hours), and a full unambiguous spec is "local time T zulu offset" with NO guarantee that local time is less than 24:00 or that zulu offset lies between -12:00 and +12:00. The ONLY thing you guarantee is that if you normalise time, the day will move to correct time to the *expected* 24 hours. And on request time zone will normalise to zulu.

Cheers,
Wol

Normalizing on UTC

Posted Oct 20, 2021 14:07 UTC (Wed) by 1kay (subscriber, #154880) [Link]

In my experience, normalizing local time (data given by humans) to UTC is one of the important uses of the TZ database.

Astrology

Posted Sep 29, 2021 10:52 UTC (Wed) by taladar (subscriber, #68407) [Link]

The key word is astrology. Because the person arguing that time zone data before 1970 is only relevant for astrology programs is clearly the one arguing in bad faith here, trying to make the people who argue for retaining that data look bad by association with astrology.

Astrology

Posted Sep 29, 2021 16:05 UTC (Wed) by Homer512 (subscriber, #85295) [Link] (6 responses)

Leaving aside whether FOSS should make value judgements on its usage (there's a reason why "Do no harm" licenses are not considered free), an easy example where TZ could screw people over would be birth certificates. My birth day is recorded with time and day. If this happens to be around midnight around a DST change, loss of historical data could easily screw me over. Because now my in-paper certificate shows one date (in local time) and the government database (in UTC) shows another date when converted to local time.

Let's hope whoever built the database didn't follow best-practices and just keep all dates in local time without specifying time zones. Now the worst that could happen is that my retirement kicks in a day late or so.

Astrology

Posted Oct 1, 2021 11:21 UTC (Fri) by tonyfinn (guest, #144891) [Link] (1 responses)

> Let's hope whoever built the database didn't follow best-practices and just keep all dates in local time without specifying time zones. Now the worst that could happen is that my retirement kicks in a day late or so.

Or you get refused for important documents, background checks, or whatever because you provided the "wrong" date of birth?

Astrology

Posted Oct 2, 2021 11:01 UTC (Sat) by Homer512 (subscriber, #85295) [Link]

Store the date without time-zone info and it will always fit my on-paper documents which obviously were written in local time. I'd say this is the safer option for background checks. It just means that my age may drift by an hour or so because no one compensates for changes in local time-zones. Of course this could also cause issues.

Astrology

Posted Oct 3, 2021 7:29 UTC (Sun) by tedd (subscriber, #74183) [Link] (3 responses)

Do people convert their date of birth if and when they move across timezones? It may not matter if you're just moving from one coast to another (in countries that have more than one timezone), but what if you're an expat living on the other side of the world. Does your birth date change?

Astrology

Posted Oct 3, 2021 10:08 UTC (Sun) by rsidd (subscriber, #2582) [Link]

Most important documents that ask for "date of birth" also ask for "place of birth" (passports, visa forms, things like that) and it is assumed that the date of birth as given is applicable to the place of birth. Otherwise it would be chaos.

Astrology

Posted Oct 3, 2021 12:23 UTC (Sun) by mathstuf (subscriber, #69389) [Link] (1 responses)

Some people seek to celebrate with their families back home, so there are certainly those who celebrate "a day early" or "a day late".

Astrology

Posted Oct 4, 2021 13:39 UTC (Mon) by Wol (subscriber, #4433) [Link]

And some people celebrate up to two years late or early ... my mum could only celebrate "on the day" one year in four ... :-)

Cheers,
Wol

Astrology

Posted Sep 29, 2021 16:07 UTC (Wed) by ceplm (subscriber, #41334) [Link]

> The key word in the article is "astrology".

I am sorry, but I don't think it is the key word. Whatever I think about astrology (and it is nothing good) is completely irrelevant to its share of use of tzdb. The only relevant metric is number of astrology programs (or number of their users) vis-a-vis other types of programs.

Astrology

Posted Sep 30, 2021 23:49 UTC (Thu) by azz (subscriber, #371) [Link] (1 responses)

Another application for historical time zone information that's been mentioned a few times on the tz list is interpreting historical astronomical observations - for example, suppose you've got a photo that was labelled as being taken at a particular local time at some obscure observatory in 1913, and you want to convert that into a modern time scale.

Astrology

Posted Oct 1, 2021 17:11 UTC (Fri) by JanC_ (guest, #34940) [Link]

Might also be useful for those studying other historical events.

A fork for the time-zone database?

Posted Sep 29, 2021 5:44 UTC (Wed) by flussence (guest, #85566) [Link] (4 responses)

This seems like wildly inappropriate behaviour for what is supposed to be, and was previously defended in court to be, a machine-readable historic record of fact.

Imagine the chaos if Unicode's UCD was run this way and old codepoints got retconned to "tidy things up". +1 for forking this into the CLDR.

A fork for the time-zone database?

Posted Sep 30, 2021 11:41 UTC (Thu) by foom (subscriber, #14868) [Link]

Note that historic timezone data is certainly not immutable. It has frequently been (uncontroversially) updated to correct a mismatch between the database and some new evidence of the actual timezone rule in use at that time.

Furthermore, it has never pretended to be an actuate record of pre-1970s fact. That had been documented all along (e.g. https://data.iana.org/time-zones/tzdb-2016g/Theory)

A fork for the time-zone database?

Posted Oct 1, 2021 11:23 UTC (Fri) by tonyfinn (guest, #144891) [Link] (2 responses)

That would be an interesting discussion: "Levitating man in business suit" is too japan centric, better get rid of it.

Backticks are confusing because of dead keys and confusion with quotation marks, they only get into the valuable one byte characters because programmers designed the spec, better relocate them.

A fork for the time-zone database?

Posted Oct 2, 2021 1:48 UTC (Sat) by tialaramex (subscriber, #21167) [Link]

"Levitating man in business suit" is a symbol from an album by British ska band "The Specials", via the WingDings Windows font. So, nothing whatsoever to do with Japan.

A fork for the time-zone database?

Posted Oct 10, 2021 0:01 UTC (Sun) by flussence (guest, #85566) [Link]

Along those lines one of the weirder things Unicode does is to declare U+037E (Greek question mark) semantically identical to an ascii semicolon, not just a homoglyph or when NFK[CD] is used. A sufficiently pedantic text parser - which do exist in the wild - is allowed to silently replace the multibyte one with the single byte one. It's great for nasty source code tricks, but I'm not sure if it has a practical use.

A fork for the time-zone database?

Posted Sep 29, 2021 7:04 UTC (Wed) by eru (subscriber, #2753) [Link] (106 responses)

An odd argument about Guandong and Shanghai. Aren't they both in in the country of China, so unifying should be uncontroversial?

Oslo and Berlin are in different countries, which in principle could at some point in the future decide to have different time zone rules. This is actually not just a theoretical possibility: There is a long-running debate in Europe about ditching DST. If that happens, different European countries may make different decisions about sticking to normal time or having a "permanent DST". It seems to me counterproductive to unify rules of different countries.

A fork for the time-zone database?

Posted Sep 29, 2021 10:54 UTC (Wed) by taladar (subscriber, #68407) [Link]

China spans several time zone widths. It could also decide in the future to move to a model similar to the US one where each part of the country uses the geographical time zone it is closest to.

A fork for the time-zone database?

Posted Sep 29, 2021 11:45 UTC (Wed) by hkario (subscriber, #94864) [Link] (29 responses)

I sure hope that the EU countries will agree at least on whether we all switch to DST or non-DST. But I have very little hope that all of them will do it the same year.
So yes, combining all CEST-using countries into a single one is very short-sighted.

A fork for the time-zone database?

Posted Sep 29, 2021 15:05 UTC (Wed) by nim-nim (subscriber, #34454) [Link]

Especially if you are dumb enough to label the result as Europe/Berlin when none of the EU centers of power are located there due to the small accident of multiple wars (including world wars) to stop it from happening. And, all of the countries in the region have some bloody history with their neighbors, which is why a bland bureaucratic apolitical EU suits most of them fine.

A fork for the time-zone database?

Posted Sep 29, 2021 16:11 UTC (Wed) by HenrikH (subscriber, #31152) [Link] (25 responses)

At least we can hope that they take lessen from Samoa and make sure that they inform projects like this well before the change takes effect since every one is dependent on it being correct.

A fork for the time-zone database?

Posted Sep 30, 2021 6:56 UTC (Thu) by cpitrat (subscriber, #116459) [Link] (24 responses)

Sure, because so many people in Europe will be impacted by this decision. It's not like tzdb discussions made the headlines elsewhere than on LWN. Ans any real-world issue experienced in Samoa is unlike to reach them in EU either. Even if they did, they would be forgotten by next year.

A fork for the time-zone database?

Posted Sep 30, 2021 7:28 UTC (Thu) by amacater (subscriber, #790) [Link] (23 responses)

For me, as a radio amateur, it's GMT. All my laptops run GMT and I don't care about daylight savings. I'm in England so my laptop is correct for half a year :) Even if you have one laptop, live in Mountain Time and don't' move - lawyers care about time, astronomers REALLY care about time, historians care about dates and times ... [English law cares about time of birth and time of death for survivorship in the case of simultaneous death, for example].

The timezones being updated - it happens about once a month, I think. Brazil seems to change definitions fairly regularly, from memory, for example. That's inconvenient: losing historical data would be criminal. The one thing I'd dearly love would be for US folks to stop using descriptive names for timezones and start using UTC+/- to denote times more often. With one colleague West Coast USA, one colleague East Coast, one on Indian Standard Time, one in Paris and two in UK for a six person team, I _always_ have to look up what time it is in two places to get an idea of who will be in the meeting for our Thursday meeting at 1900 UTC.

A fork for the time-zone database?

Posted Sep 30, 2021 10:19 UTC (Thu) by LtWorf (subscriber, #124958) [Link] (22 responses)

You have meridian 0 privilege and are thus not the most hit by the issues here though.

A fork for the time-zone database?

Posted Sep 30, 2021 16:43 UTC (Thu) by marcH (subscriber, #57642) [Link] (21 responses)

> You have meridian 0 privilege and are thus not the most hit by the issues here though.

I used to think it was a privilege. Then I got reports of bugs that happened everywhere except in GMT. From that moment I permanently set some test systems in a non-zero timezone.

Another useful test trick I just discovered: there is a +14:00 and a -11:00 timezone, which means they are _never_ on the same date. Perfect to trigger some bugs with a simple and local TZ environment change.

Probably the most funny timezone experience was with code entering timestamps into MySQL. With daylight savings the same hour repeats in Autumn, that produced some very interesting graphs! After 10 years MySQL finally made it easy to enter a zone with the timestamp, before that the only workaround was switch the MySQL server to UTC.

A fork for the time-zone database?

Posted Sep 30, 2021 17:08 UTC (Thu) by amacater (subscriber, #790) [Link] (20 responses)

Switch the server to GMT is the answer - everything else then becomes a local offset and logs are consistent no matter where you read them from.

This is how the military keep time. [Flying as a civilian with the RAF - "Do you want UK time, Hong Kong time, local time on the ground or RAF time?"] - the pilots keep one timezone wherever they fly in the world and eat/sleep etc. accordingly. The only oddity, done for log keeping purposes is that 2359 leads seamlessly to 0001 so that there is never an ambiguity as to date. Seasoned Services folk claim that the odd few seconds are "your time" in the day.

A fork for the time-zone database?

Posted Sep 30, 2021 17:25 UTC (Thu) by Wol (subscriber, #4433) [Link]

I like reading WW2 autobiographies, and I remember one escort commander complaining about a ship under his command ... iirc the Captain operated "ship's time" which was GMT+2. Seeing as the rest of the flotilla kept local time on the transatlantic run, the Commander was moaning that he had to remember what the time was on this ship, as he'd get reactions like "can't a chap have his afternoon nap in peace?" ... early in the morning!

Cheers,
Wol

A fork for the time-zone database?

Posted Sep 30, 2021 23:29 UTC (Thu) by marcH (subscriber, #57642) [Link] (18 responses)

It makes me smile every time someone in the US looks at some 24h clock of mine and tells me "oh, you're using military time?". No, just time.

This sequence is also very funny: 10am, 11am, 12pm(!), 1pm, 2pm

But what _really_ cracks me up is when people read "military time" aloud. Example:

16:21 = sixteen HUNDREDS (!!) twenty one

Remember this is in the country where nothing is DECIMAL but a happy mix of units in base 4, base 12 and what not instead. So the only unit where base 10 sort of made it is actually https://en.wikipedia.org/wiki/Sexagesimal! Hilarious.

A fork for the time-zone database?

Posted Oct 1, 2021 9:27 UTC (Fri) by excors (subscriber, #95769) [Link] (17 responses)

> This sequence is also very funny: 10am, 11am, 12pm(!), 1pm, 2pm

Seems quite logical to me, since time is a continuous value:

11:59:59.999 - before midday, so definitely "am" (ante meridiem)
12:00:00.000 precisely - ???
12:00:00.001 - after midday, so definitely "pm" (post meridiem)

The (sensible) convention is for midday precisely to be called "pm", which means the label changes at the same point that the numbers roll over, and you avoid having an infinitesimal period where it's 12 but still "am". Then you can easily truncate any "hh:mm:ss.sss" down to "hh:mm:ss" or "hh:mm" or "hh" without having to worry about crossing the threshold where the label changes.

On the other hand, I'll agree that 12 o'clock really should be 0 o'clock.

A fork for the time-zone database?

Posted Oct 2, 2021 5:43 UTC (Sat) by jezuch (subscriber, #52988) [Link]

Kinda. But it always gives me, a European, a pause. "Wait, is this meeting at midnight? No, that's silly, it must be this confusing notation for noon".

A fork for the time-zone database?

Posted Oct 2, 2021 18:02 UTC (Sat) by intelfx (subscriber, #130118) [Link] (15 responses)

Not so much logical if you grew up using 24-hour notation and your brain wired itself up to understand "pm" as an offset (i. e. "am" is equivalent to "+0", and "pm" equivalent to "+12"). Then it goes like this:

- "10am" = 10+0 = 10
- "11am" = 11+0 = 11
- "12pm" = 12+12 = 24 --- wtf?
- "1pm" = 1+12 = 13

Like most other things, it's a matter of perspective. I trip over this notation constantly.

A fork for the time-zone database?

Posted Oct 2, 2021 19:53 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (14 responses)

As an American who trained myself to read 24-hour time, I actually ended up memorizing a series of mnemonics for it:

* 0:xx = 12:xx AM (just memorize)
* 1-11:xx = 1-11:xx AM (obvious)
* 12:xx = 12:xx PM (obvious once you have the first rule memorized)
* 13:xx = 1:xx PM (13 is not composite, neither is 1)
* 14:xx = 2:xx PM (14 is even)
* 15:xx = 3:xx PM (15 is divisible by 3)
* 16:xx = 4:xx PM (16 = 4²)
* 17:xx = 5:xx PM (17 and 5 are both prime)
* 18:xx = 6:xx PM (18 is divisible by 6)
* 19:xx = 7:xx PM (19 and 7 are both prime)
* 20:xx = 8:xx PM (20 and 8 are both divisible by 4)
* 21:xx = 9:xx PM (21 and 9 are both divisible by 3)
* 22:xx = 10:xx PM (22 and 10 are both even)
* 23:xx = 11:xx PM (23 and 11 are both prime)
* 24:xx doesn't exist. Some people write 24:00 to mean 0:00, but at the end of the day instead of the beginning of the day.

These mnemonics work largely because 12 is a highly composite number, and adding 12 to any given number doesn't change its divisibility by any factor of 12 (i.e. if x is divisible by some factor of 12, then so is x + 12). The primes, on the other hand, appear to arise for the opposite reason, which is that 12 covers nearly all of the available prime factors (i.e. if x is *not* divisible by some factor of 12, then neither is x + 12), and the few that it misses are just not dense enough to stop the shifted primes from existing.

A fork for the time-zone database?

Posted Oct 2, 2021 21:23 UTC (Sat) by rschroev (subscriber, #4164) [Link] (13 responses)

I must be missing something, but why not simply

* 0:xx = 12:xx AM (just memorize)
* 1-11:xx = 1-11:xx AM (obvious)
* 12:xx = 12:xx PM (obvious once you have the first rule memorized)
* everything else: subtract 12, put 'PM' after it

I don't think I understand why you would need to memorize anything (apart from the possible confusion with 12 AM/PM).

A fork for the time-zone database?

Posted Oct 3, 2021 0:11 UTC (Sun) by Wol (subscriber, #4433) [Link] (7 responses)

Yup. Ante/Post-Meridian ... the only confusion is what do you call the (Anti)Meridian. So all you need to do is remember both the morning and afternoon - for this purpose - START at 12 exactly.

You have the same problem with the 24-hr clock - is midnight 0:00 or 24:00? But it's the exact same rule - the day STARTS at midnight 0:00 exactly.

(Then, of course, you have all those weirdos where time-keeping applications apply the rule that a work shift always ends the same day it starts, so it would have had my hours as working from 22:00 to 32:00 ...)

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 3, 2021 7:38 UTC (Sun) by marcH (subscriber, #57642) [Link] (6 responses)

There's no 24:00, or 24:anything.

A fork for the time-zone database?

Posted Oct 3, 2021 8:23 UTC (Sun) by Jonno (subscriber, #49613) [Link] (5 responses)

> There's no 24:00, or 24:anything.

Actually there is a 24:00:00.000, but not 24:anything-else. This is so you can describe the end of a day without involving the next date. For example 2011-02-28T24:00:00.000 equals 2011-03-01T00:00:00.000 exactly.

This is especially convenient for time durations ending at midnight. For example you can say "Open at 2011-02-28 from 16:00 to 24:00" instead of "Open from 2011-02-28 16:00 to 2011-03-01 00:00".

A fork for the time-zone database?

Posted Oct 3, 2021 16:13 UTC (Sun) by marcH (subscriber, #57642) [Link] (4 responses)

> For example you can say "Open at 2011-02-28 from 16:00 to 24:00"

Understood but I don't remember seeing that anywhere I've been.

> Actually there is a 24:00:00.000, but not 24:anything-else. This is so you can describe the end of a day without involving the next date.

So how does that help "from 16:00 to 00:30"?

A fork for the time-zone database?

Posted Oct 3, 2021 17:15 UTC (Sun) by Jonno (subscriber, #49613) [Link] (3 responses)

>> Actually there is a 24:00:00.000, but not 24:anything-else. This is so you can describe the end of a day without involving the next date.
> So how does that help "from 16:00 to 00:30"

It doesn't. But in that case you are actually open during two different calendar days, so it is natural that you need two different dates to unambiguously describe the period of time in question. But if you close at midnight, you are only open during one calendar day, so the need to use two different dates for the opening and closing time would be awkward, thus the 24:00 special case.

( BTW, the same is true of some am/pm usages, where "12:00 am" is equivalent to "00:00", "12:00 noon" is equivalent to "12:00" and "12:00 pm" is equivalent to "24:00". Of course, in other am/pm usages "12:00 am" ambiguously refer to midnight at either the start or the end of the day, while "12:00 pm" refer to noon; and in yet other am/pm usages "12:00 am" refer to "noon", while "12:00 pm" ambiguously refer to midnight at either the start or the end of the day. Neither of these usages makes sense if you consider the literal meaning of am (ante meridiem - before noon) and pm (post meridiem - after noon): at noon it is neither before noon nor after noon, so both am and pm are incorrect, while at midnight it is equally after one noon and before another noon, so either am or pm can be equally correct, depending on which noon you are referring to. Even so, both the later two versions are more common than the first. Most computer systems consider "12:00 pm" to be noon, but before the age of computers using "12:00 am" for noon was clearly the most common usage... )

>> For example you can say "Open at 2011-02-28 from 16:00 to 24:00"
>Understood but I don't remember seeing that anywhere I've been.

It's fairly uncommon for places to close at midnight, as most "normal" businesses close earlier and most "nightlife" establishments close later, but in the rare cases someone actually closes at midnight, I have only ever seen opening hours listed as "16:00 - 24:00", never as "16:00 - 00:00".

A fork for the time-zone database?

Posted Oct 3, 2021 18:29 UTC (Sun) by Wol (subscriber, #4433) [Link]

But, as I pointed out, it is apparently quite common for night shifts to be clocked as 22:00 - 32:00.

Clearly unambiguous for anything that is expecting it ... :-) and gets round the problem of special-casing shifts that finish before they start ... at the cost of having to handle shifts that end after the normal end of the day.

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 3, 2021 19:52 UTC (Sun) by perennialmind (guest, #45817) [Link] (1 responses)

When working with intervals, it's often desirable to establish a convention leaving one side open. With time, it's generally: start, inclusive and end, exclusive. With that view, noon falls unambiguously in the latter half of the day: pm.

The best I can say in defense of the clock's modulo-12 residue starting system at 1 is that it's not technically wrong, merely suboptimal.

A fork for the time-zone database?

Posted Oct 3, 2021 20:10 UTC (Sun) by marcH (subscriber, #57642) [Link]

This just yet another problem of counting from 1 and not 0.

There would be no am/pm inconsistency if 12h clocks counted from 0:

0:00am 1:00am ... 11:00am 0:00pm 1:00pm ... 11:00pm

When the zero was invented, tens and hundreds and thousands started from 0 but units kept starting at 1 for obvious "backward compatibility" reasons. This is the root cause of many inconsistencies and why 24h clocks and most programming languages switched to counting from zero.

https://en.wikipedia.org/wiki/Zero-based_numbering

A fork for the time-zone database?

Posted Oct 3, 2021 4:34 UTC (Sun) by NYKevin (subscriber, #129325) [Link] (4 responses)

Because mental arithmetic is hard and recognizing numerical patterns is easy.

A fork for the time-zone database?

Posted Oct 3, 2021 7:46 UTC (Sun) by marcH (subscriber, #57642) [Link] (1 responses)

Where I grew up people usually read aloud 18:00 as "six o'clock". It's read "eighteen o'clock" only when there's a lack of context and risk of confusion because it's a train schedule or something. So, all kids learn how to add 12 until they know the whole range by heart and none seems to be in need of any "easier" trick.

A fork for the time-zone database?

Posted Oct 4, 2021 22:10 UTC (Mon) by Wol (subscriber, #4433) [Link]

Some other poster commented on this, but to me a time "on the hour" in the 24-hr clock is always referred to as "hundred", ie "eighteen hundred". If there's any confusion as to whether time is meant, the word "hours" is added - "eighteen thirty hours". Noticeably, this is normally not used ante-meridian, just post-meridian :-)

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 3, 2021 11:34 UTC (Sun) by rschroev (subscriber, #4164) [Link] (1 responses)

Interesting, you and I must have very different ideas about what is easy and what is difficult!

A fork for the time-zone database?

Posted Oct 3, 2021 12:16 UTC (Sun) by mathstuf (subscriber, #69389) [Link]

As many do :) . As mentioned elsewhere, if my watch says "18:30", I'll answer "six thirty" if someone asks me the time. The way I think about is to "subtract 2" and ignore the tens digit when the number is "large enough". For 22:00 and later, the time of day is the hint that it isn't the earlier hours.

A fork for the time-zone database?

Posted Oct 1, 2021 11:24 UTC (Fri) by tonyfinn (guest, #144891) [Link] (1 responses)

I know for Ireland, the answer is going to pretty much dictated by "what the UK does". Consistency across our one land border and the desire to keep connections with Northern Ireland is going to trump whatever DST decision France or Sweden make.

A fork for the time-zone database?

Posted Oct 1, 2021 14:10 UTC (Fri) by farnz (subscriber, #17727) [Link]

And, of course, showing just how much politics is involved, there is always the wild card of Irish Reunification - the possibility that NI will diverge by enough from GB that it leaves the UK and the island of Ireland becomes one country. Or if something truly weird and currently unlikely happens, and the island reunifies because Ireland joins the UK instead of remaining a republic.

Irish reunification as a political event is unlikely to be timed conveniently for timezone shifts; we could well have something where the "Europe/Dublin" timezone follows GB until reunification and then changes to UTC+0 or UTC+1 all year round.

Timezones are inherently a political matter, and they (unfortunately) don't respect the desires of computer people.

A fork for the time-zone database?

Posted Sep 29, 2021 12:27 UTC (Wed) by smoogen (subscriber, #97) [Link] (71 responses)

The issue is that people see these names as regional identity even when they are in the same 'country'. People in Germany put in tickets wanting to know why Bavaria isn't listed separate from Berlin. People in France want their department listed. People in the United States want their state listed separately. National identity is 'weaker' than regional identity for many people and people in Guandong identify stronger with the cities in their region more than Shanghai. [Going from conversations with people from that province, its like telling everyone in the UTC+0 timezone that they are now Man United fans because it got the most press releases.]

In the end, names for a major city in a zone always cause headaches because of this. There are enough people who hate whatever city is chosen that they will make it a campaign to make sure it isn't mentioned.

A fork for the time-zone database?

Posted Sep 29, 2021 15:43 UTC (Wed) by nim-nim (subscriber, #34454) [Link] (41 responses)

People in France most definitely do *not* want their department listed. None of the various regionalisms map to a department. All the apps and websites that insist the French want to input a department are badly localized junk that tries to impose the realities of a federal country like the USA or Germany on a non-federal state.

(hint : the departments were specifically created during the French revolution to break up historical regions because those regions tended to oppose whoever was in power in Paris; an old project of the monarchy that suited the revolutionaries fine)

OTOH people are still warring in Ukraine along the border of the 1054 schism; Israelis recreated a political entity thousands of years after it was wiped out; WWI was in great part about Lorraine/Lothringen ie one of the last jolts of an 843 dispute between Charlemagne inheritors (with Lothair I the main loser).

Localization is a matter for local people and imposing your (mis)understandings on a region you have little knowledge of is a bad bad idea.

A fork for the time-zone database?

Posted Sep 29, 2021 16:26 UTC (Wed) by smoogen (subscriber, #97) [Link] (1 responses)

Department was the wrong term.. The people opening tickets from Marseille, Lyon, and I think Bordeaux in France definitely did not want their timezone be listed as Paris in the installer. (Or when I did tech support for a company there were people who didn't want the Windows or Mac timezones defined by 'Paris').

In the end, I am in complete agreement: Localization is for local people and can be quite quite local.

A fork for the time-zone database?

Posted Sep 29, 2021 16:49 UTC (Wed) by nim-nim (subscriber, #34454) [Link]

Well yes in France the revolutionary purging of historical regions was successful enough references to Paris (as a regional anchor) can be offensive to other parts of the country:).

Which means the only “good” localization in France is France (or continental France vs non continental France because everyone realizes the French parts in America or the Pacific need special treatment in many cases).

France won’t make Corsicans or Bretons or Catalans very happy but they will hate identification with Parisians more.

Localization is as messy as human history.

A fork for the time-zone database?

Posted Sep 29, 2021 17:11 UTC (Wed) by mbunkus (subscriber, #87248) [Link] (38 responses)

While we (Germans) do live in a federal state, we also find it kind of ridiculous having to enter our state's name in online forms as there are very, very few situations where it actually matters (mostly when dealing with government things, or maybe if it's related to holidays). Most definitely not when purchasing things or sending stuff via mail, 'cause we don't do taxation by state, nor sales-related laws, nor does any of the postal/delivery services care about states. Requiring your state's name is an Americanism, similar to how requiring you to enter exactly one first & one last name is a Westernism.

A fork for the time-zone database?

Posted Sep 30, 2021 7:25 UTC (Thu) by marcH (subscriber, #57642) [Link] (37 responses)

> Requiring your state's name is an Americanism,

US states matter because on many topics (majiruana, abortion, death penalty, guns,...) there is at least as much difference between two given US states than between two European countries. People in Europe like to laugh at geographical ignorance in the US but conversely...

For instance majiruana has basically the same status as alcohol in many US states now yet it is still in the most dangerous DEA category. See https://www.dea.gov/drug-information/drug-scheduling a.k.a. the "war" on drugs = the one immediately before the "war" on terror. The former was apparently much more successful that the latter because 0.7% of the US population (and mostly black) is still incarcerated. Some people have real "equity" problems. I digress sorry.

> similar to how requiring you to enter exactly one first & one last name is a Westernism.

You meant "given name" and "family name" of course :-)

A fork for the time-zone database?

Posted Sep 30, 2021 21:44 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (3 responses)

US states are basically countries in their own right, except for foreign relations (incl. national defense), interstate and foreign commerce, and miscellaneous federal responsibilities like the USPS. See the Tenth Amendment of the US Constitution, and then read the rest of the document (particularly Article I, Sections 8 and 9) for the full list of Things Which The Federal Government Is Officially Allowed To Do.™ Everything that isn't on that list is the responsibility of state governments.

(Or at least, that's what the founders *wanted.* What actually happened was, as soon as the ink had dried on the Fourteenth Amendment, Congress promptly decided to start inserting the phrase "in or affecting interstate or foreign commerce" into every law they wanted to pass that wasn't on the list, and the courts just went with it, so now the feds can do whatever they want under the legal fiction that they are "regulating commerce." But the states still retain considerable autonomy and the feds cannot simply tell them what to do, hence the discrepancies on marijuana policy and various other political issues.)

A fork for the time-zone database?

Posted Oct 1, 2021 13:58 UTC (Fri) by mathstuf (subscriber, #69389) [Link] (2 responses)

The Federal government also manages a *lot* of money, so it has threatened to withhold such money if other things were not done. For example, the drinking age is 21 because otherwise states wouldn't get funding for highways (something well within Congress' powers).

A fork for the time-zone database?

Posted Oct 1, 2021 16:24 UTC (Fri) by nybble41 (subscriber, #55106) [Link] (1 responses)

That is true, though of course most of the money the federal government is threatening to withhold came from the residents of those states in the first place. They really shouldn't have been so quick to give up on the earlier system under the Articles of Confederation where the federal government drew its funding from the state governments rather than taxing residents directly. *That* system gave states the collective bargaining power to fight back against inequitable arrangements like being forced to pay for highway development in other states while being barred from receiving any of the funds themselves unless they follow other arbitrary rules which would not ordinarily fall within Congress's enumerated powers.

Really such rules ought to be deemed unconstitutional in any case. If Congress can't pass a law e.g. setting the drinking age to 21 under their own authority then they shouldn't be able to require states to do so on their behalf as a condition for receiving federal highway funding or any other benefit. Doing so implies that the state governments are acting as agents of Congress in passing those laws, which ought to be deemed equivalent to Congress passing the laws itself.

A fork for the time-zone database?

Posted Oct 1, 2021 19:24 UTC (Fri) by marcH (subscriber, #57642) [Link]

> Doing so implies that the state governments are acting as agents of Congress in passing those laws, which ought to be deemed equivalent to Congress passing the laws itself.

The most ironic is this federal strong-arming was performed by the "government-is-the-problem" president. But you know, there are "cases where overwhelming needs...". Like for instance being married to the "war-on-drugs" first lady?

What a show. From an actor of course. Now it could have been worse, he could have been a TV reality star. Oh, wait...

A fork for the time-zone database?

Posted Oct 8, 2021 14:58 UTC (Fri) by j16sdiz (guest, #57302) [Link] (32 responses)

> You meant "given name" and "family name" of course :-)

Not everybody have a family name.
Somebody have multiple given names (for example, one at birth and another one when they become adult)

A fork for the time-zone database?

Posted Oct 8, 2021 17:34 UTC (Fri) by Wol (subscriber, #4433) [Link] (1 responses)

Even in the West, it's NORMAL for people to have more than just a first and last name. Any ID, I ALWAYS use at least my middle initial, if the system will let me. If you see my signature without my middle initial, it's a pretty safe bet it's a forgery.

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 8, 2021 18:54 UTC (Fri) by amacater (subscriber, #790) [Link]

https://www.kalzumeus.com/2010/06/17/falsehoods-programme... still bears repeating.

Folks can have an alias identity for whatever reason: Vagrant Cascadian is an alias, I believe.

Whatever you think a name is, you're likely wrong in some respect. Naming hosts is hard - https://xkcd.com/910/ - refers
to computers but humans will break any assumptions you may make. In Hong Kong, for example, it's complex: https://culturalatlas.sbs.com.au/hong-kong-culture/hong-k...

A fork for the time-zone database?

Posted Oct 8, 2021 19:46 UTC (Fri) by marcH (subscriber, #57642) [Link] (29 responses)

> Not everybody has a family name

Do you think "first" and "last" are better ?

I was merely suggesting a very quick fix for the Western world system, not something universal.

A fork for the time-zone database?

Posted Oct 9, 2021 11:00 UTC (Sat) by mbunkus (subscriber, #87248) [Link] (28 responses)

The insistence on splitting the name field into multiple components is the problem, no matter what you name those pieces. The most universal way is to store just a single name field. Let the user enter whatever they like, how many components they like, in any order. And don't try to extract meaning from it. Just use a friendly "Hello <name field>," or something simliar, don't Mr. or Mrs. or Ms. or whatever anyone, and you won't have a problem.

Using "given name" & "family name" is not a solution. It just slaps on a different coat of paint on the problem without solving it.

Names are complex. Even in the countries we call Western.

A fork for the time-zone database?

Posted Oct 10, 2021 18:54 UTC (Sun) by marcH (subscriber, #57642) [Link] (21 responses)

> The most universal way is to store just a single name field.

Agreed, but in the Western cultures the family/given split is good enough for the immense majority of people and has endured the test of time and is here to stay.

There have been big changes to family structure and even language recently in the Western world (much more change than in the rest of the world) yet there has been no loud request (yet?) to reconsider this name split. Not even on social media where everyone now loves sharing and spreading the craziest ideas whether they love them or hate them; only the emotions matter.

Even for "foreigners" the main issue is not this split but rather transliteration; a problem much older than computers. I guess that's because families have many different forms but the idea is pretty universal.

> Using "given name" & "family name" is not a solution. ​It just slaps on a different coat of paint on the problem without solving it.

No, it gives the current, unique and good enough solution its accurate... name. Naming things for what they actually are is really not just "slapping a different coat" and in this case it has proved useful for people from various origins who can get very easily and obviously confused by "first" and "last".

A fork for the time-zone database?

Posted Oct 10, 2021 19:11 UTC (Sun) by zdzichu (subscriber, #17118) [Link] (20 responses)

I would strongly urge you to read "Falsehoods Programmers Believe About Names" linked in the comments and think about every single item on that list.
There's also a "Falsehoods Programmers believe about Gender" list which contains similar mistakes and eye-opening (or eye-watering for that matter) "Designing forms for gender diversity and inclusion".

A fork for the time-zone database?

Posted Oct 11, 2021 7:42 UTC (Mon) by Wol (subscriber, #4433) [Link] (3 responses)

Exactly.

EVEN IN THE WEST we have two very different naming systems.

We have Christian name(s), patronymic, (surname)
and we have
Christian name(s), (patronymical) surname.

So you can see the drift ... Patronymical cultures don't normally use surname. MANY people don't use First name (the Germans certainly used to use a way of handling this - I've seen Ausweis/Reisepass with the second name underlined, to indicate this is the "name that is used".

I'm guessing that Anglo-Saxon names like Smith and Miller are surnames - typically a *professional* name handed down the generations, while Johnson, Smithson, MacGregor, McIntyre, are patronymics, eg James son of John, Gregor son of Gregor.

When the surname habit froze in I don't know, but I'm guessing it was fairly recent ...

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 11, 2021 9:15 UTC (Mon) by farnz (subscriber, #17727) [Link] (2 responses)

Even in England, we have two systems in parallel; there's the "Christian name, surname" one that most people think of, but there's a significant minority (who have money) that have "inherited name, personal name, surname", where they are only "inherited name, surname" in very formal situations, but they're "personal name" or "personal name, surname" otherwise.

So I have an acquaintance (let's call him "John"), whose name on his passport is something like "James John Smith", but whose bank cards etc are in the name of "Mr John Smith". The only time he uses "James" (which is the name the eldest son was given in each generation, and has the family lands attached to it) is when he's dealing with courts, police, or equivalents.

And this ignores such fun as stage names - e.g. without looking it up, I'd not recognise "Newton Edward" as the first names of someone whose ID normally calls him "Paul Daniels", and yet I know exactly who Paul Daniels is because he was a common fixture on BBC TV 30 to 40 years ago.

A fork for the time-zone database?

Posted Oct 11, 2021 10:15 UTC (Mon) by Wol (subscriber, #4433) [Link]

> And this ignores such fun as stage names - e.g. without looking it up, I'd not recognise "Newton Edward" as the first names of someone whose ID normally calls him "Paul Daniels", and yet I know exactly who Paul Daniels is because he was a common fixture on BBC TV 30 to 40 years ago.

And the reason a lot of people do not use the real name on stage is because acting is a closed shop, you MUST have an Equity card, and no two people can have the same name on active Equity cards.

The reason we know him as David W*A*lliams is because somebody else already had a card in the name of David W*I*lliams.

So yes. It's a very safe bet that most people on stage don't go by their real name because they couldn't get a card with that name on it ...

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 11, 2021 11:36 UTC (Mon) by Wol (subscriber, #4433) [Link]

> The only time he uses "James" (which is the name the eldest son was given in each generation, and has the family lands attached to it) is when he's dealing with courts, police, or equivalents.

:-) To give a real life example, I believe a certain personage uses the name "Charlie Chester" (ONE of his real names!) when he wants to fly under the radar a bit ...

His son was known for a while as Cornet Wales ...

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 11, 2021 8:28 UTC (Mon) by marcH (subscriber, #57642) [Link] (15 responses)

> I would strongly urge you to read "Falsehoods Programmers Believe About Names" linked in the comments and think about every single item on that list.

Pure slideware / bullet points with zero reference, examples, number or any sort of evidence. Zero recommendation or anything anywhere close to a solution.

My favorite falsehood is the last one: "some people don't have a name". Fine, keep not using a computer then and all problems solved!

A fork for the time-zone database?

Posted Oct 11, 2021 11:44 UTC (Mon) by Wol (subscriber, #4433) [Link]

> Pure slideware / bullet points with zero reference, examples, number or any sort of evidence. Zero recommendation or anything anywhere close to a solution.

And why should it set out to provide a solution? It's setting out to provide a map of the bear-traps. It's not setting out to provide a map of your best route around them!

It's down to YOU to find the correct solution for YOUR circumstances. How often do I curse blue bloody murder - AND USUALLY WALK AWY - at websites that - because their designers DIDN'T THINK - won't let me enter correct data. How many websites demand a mobile phone number, when a lot of their customers won't have one? All because they insist on texting you delivery information, for example.

Unfortuntely your typical programmer analyst is doing a job and doesn't bother to think. The analyst is unaware of the real problem-space, and the programmer does what he's told. And the poor sod at the sharp end curses because the problem the computer solves isn't the one he's got!!!

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 11, 2021 13:36 UTC (Mon) by farnz (subscriber, #17727) [Link] (13 responses)

A lot of it comes down to "in this situation, how should the system refer to you?". For example, a chat system might want a display name for other humans to use; a tax system might want an identity the government uses for you. LWN wants nicknames for comments, Facebook wants an "authentic" name.

If you're going to design for a "name", you need to know what you want it for in order to ask the human for the right thing.

A fork for the time-zone database?

Posted Oct 11, 2021 14:37 UTC (Mon) by smurf (subscriber, #17840) [Link] (12 responses)

Exactly. The multitude of address formats causes a whole lot of nonsense data fields to appear in addresses of places which don't need them, or worse slow down delivery because the postal software can't deal. Why the *censored* do some of theses idjits insist on a "state" in my address, and/or auto-infer the name of my neighborhood and insist on adding it to the address in some random location?

I truly don't get why y'all are going to such lengths. Offer a "how do you want to be addressed" field, a "which country / administration do you live in" (that wording should cover Taiwan, Palestine, or Transnistria) menu, and a "what should be on the address label of a package to you" multi-line field. All of which gotta be Unicode capable and not filter out random characters (no, Bobby Tables must not be prevented from causing havoc by filtering user input, thank you very much).

Then you can lean back in comfort and watch everybody else struggle with this nonsense.

A fork for the time-zone database?

Posted Oct 11, 2021 16:45 UTC (Mon) by mpr22 (subscriber, #60784) [Link]

> The multitude of address formats causes a whole lot of nonsense data fields to appear in addresses of places which don't need them

aaaaa

don't talk to me about address formats

I deal with a pair of systems (and their constellation of client websites) that separate "house number or name" from "street", require both fields to be populated, and always present them HNON first

which is a piece of gibbering anglocentric stupidity (and doesn't even work everywhere in england)

but I'm not allowed to set it on fire

A fork for the time-zone database?

Posted Oct 11, 2021 23:09 UTC (Mon) by sammythesnake (guest, #17693) [Link] (10 responses)

Please, NO to free-form addresses.

I deliver for Amazon and every day I have to deliver to addresses that are missing the house number, or the street name, or it's there but spelled incorrectly, or doesn't exist, or have a postcode in a different city from the rest of the address...

All addresses should be either from the database in a canonical form, or behind a scary warning that if you change your address from that canonical form, your package may-or-may-not ever arrive.

Of course, once I get there, I'll still have to handle houses without the number/name anywhere to be seen with numbering orders that must be the product of a stroke* and so on, but let's at least let's solve this one problem that we so easily could, eh?

* Example from today. 10, 9, 3, 4, 7, 8, 5, 6. No house 1 or 2. I swear they get together to drink absinthe and dream up new ways to make no sense...

A fork for the time-zone database?

Posted Oct 12, 2021 0:22 UTC (Tue) by mpr22 (subscriber, #60784) [Link]

Behold the wonders:

https://en.wikipedia.org/wiki/Address

The only internationally portable way to represent addresses, if you don't have the budget to throw piles of money at a company whose primary revenue stream is extracting capitalist rent from control of access to an address database, is as a series of freeform lines written in either Latin letters or the addressee's native script.

It should be noted that even the craziest house numberings usually have some kind of logic, though you may have to analyse its development diachronically rather than synchronically for it to become apparent.

A fork for the time-zone database?

Posted Oct 12, 2021 9:13 UTC (Tue) by farnz (subscriber, #17727) [Link] (3 responses)

Context is everything. If you're getting an address to hand over to a delivery agent, the address should come from a mapping database shared with the agent, so that what you get when you have an Amazon parcel to drop off is in a form usable to you - and that can mean that the address you have for me is a shipping point, not my home (e.g. a PO Box). If you're getting an address to share with the government for tax reasons, it should be in a form that the government is happy with.

And as the delivery company, or the government, you keep a database (either in-house, or bought in from a mapping provider) that contains all the addresses you want in a form that you're happy with. That way, you get a decent location for your parcel deliveries; downside is that your company has to maintain that database so that everyone's address is in it.

Free form addresses are fine if you're gathering something that the user will want to simply share with friends.

A fork for the time-zone database?

Posted Oct 12, 2021 11:51 UTC (Tue) by nye (subscriber, #51576) [Link] (2 responses)

> And as the delivery company, or the government, you keep a database (either in-house, or bought in from a mapping provider) that contains all the addresses you want in a form that you're happy with

That doesn't work in practice though, because the delivery is not done by some nebulous "company", but by a delivery person who has to drive a van around looking for the address on the package. The company hasn't individually looked over each address and checked that it's in the most accessible form; that would be impossible. A person knows their address; "normalising" it to something that conforms to a database created by a machine doesn't magically improve things by virtue of having it in some "consistent" format, because real addresses fundamentally aren't consistent.

My address technically looks like this:
1 Some Street
Town
County
Postcode

Unfortunately "Some Street" isn't accessible by car so isn't on every satnav database, which frequently can't understand that concept. The street that it branches off is on all of those databases though, so after living here a while, we worked out that delivery drivers had a much higher success rate if we render our address as:
1 Some Street
The Other Street
Town
County
Postcode

Systems which try to normalise this end up making the result categorically worse for us and for the people trying to deliver to us.

(Shout out to Kickstarter which requires me to double-confirm my address for every project I back, including having to pick a radio box to say that yes I really do want to use the address you made me re-enter again, and not your oddly mangled version that you describe as "more precise" but has two of the lines merged for no reason. Fuck you.)

A fork for the time-zone database?

Posted Oct 12, 2021 12:22 UTC (Tue) by farnz (subscriber, #17727) [Link] (1 responses)

Which is a failure of the database that's on offer - and really should be in delivery notes, not part of the address. So your address as stored in Amazon's systems should be "1 Some Street, Town, County, Postcode", with a note for the driver saying "Some Street is not accessible by car - go to 2 The Other Street, and then you can walk it".

The delivery notes, of course, are free-form.

Ideally, there would be routes to feed back the issue to the database owner, so that when you pick "1 Some Street" for your Amazon package, the resulting label and bar codes direct their in-van satnav to "2 The Other Street" and tell them to walk the rest of the way.

And Kickstarter have no excuse - when you first add your address to your account, they can ask you if you made a mistake, but after that they should be using the address on file as-is, not insisting on reconfirmation. While they may well be right that you're getting the address "wrong" (if it's a UK address, the correct form loses County nowadays, so it would be "1 Some Street, Town, Postcode"), they should only be asking you to correct it if it's actually causing problems.

A fork for the time-zone database?

Posted Oct 12, 2021 18:52 UTC (Tue) by Wol (subscriber, #4433) [Link]

In the UK the "correct" form often now loses "Town" and replaces it with Post Town 20 miles away ...

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 12, 2021 13:16 UTC (Tue) by jezuch (subscriber, #52988) [Link] (2 responses)

The fix is simple! You need just three boxes: https://what3words.com/

:)

A fork for the time-zone database?

Posted Oct 12, 2021 14:01 UTC (Tue) by excors (subscriber, #95769) [Link]

That's not ideal because What3Words is proprietary and the owners are litigious, plus it appears to be far more prone to confusion between similarly-named nearby addresses than they claim: https://techcrunch.com/2021/04/30/what3words-legal-threat...

A fork for the time-zone database?

Posted Oct 12, 2021 14:19 UTC (Tue) by smurf (subscriber, #17840) [Link]

w3w is categorically bad on literally every metric you'd care to throw at such a system.

Google's plus code isn't that much better.

The only location-encoding system that makes some kind of practical sense IMHO is Uber's H3. It just needs a reasonably pronounceable overlay.

A fork for the time-zone database?

Posted Oct 12, 2021 17:56 UTC (Tue) by Wol (subscriber, #4433) [Link]

> All addresses should be either from the database in a canonical form, or behind a scary warning that if you change your address from that canonical form, your package may-or-may-not ever arrive.

Trouble is, the database isn't in a canonical form ... and all too often they assume that all you NEED is the postcode and the house number. So it's quite normal to have number, street, and the post town 20 miles away ... together with the post code that does uniquely identify the property you want - but it would be nice if the address actually included the town/village where said property was located ...

(Speaking as another guy who has spent the last god knows how many years driving a delivery van ...)

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 23, 2021 14:38 UTC (Sat) by nix (subscriber, #2304) [Link]

Never ever go to Costa Rica. They are slowly gaining a standardized address system, but "the green house half a mile down the road from the place where the gas station used to be" is still commonplace as houses' sole addresses, particularly outside major cities. And you're lucky with that address: it's not "half a mile down the road from the house owned by the Alvarezes"... with an unstated "... and the Alvarezes moved out fifty years ago". I believe it's the single most hilariously impractical addressing system still in common use outside war zones.

A fork for the time-zone database?

Posted Oct 10, 2021 19:36 UTC (Sun) by divanise (subscriber, #71550) [Link] (5 responses)

> The most universal way is to store just a single name field.

Mostly agree, but storing two fields ("full name", eg "Johnathon Hancock", and "goes by", eg "Johnny") is a significant improvement for roughly equivalent effort over the naive "first name/last name" approach. I've advocated for "full/goes by" ever since I first came across it, but often fail due to either legal obligations or API restrictions that require collecting "first name/middle initial/last name".

A fork for the time-zone database?

Posted Oct 10, 2021 19:52 UTC (Sun) by mbunkus (subscriber, #87248) [Link] (1 responses)

But "goes by" is again incredibly dependent on both context and culture. When do you go by that name? Is it what friends call you? Co-workers? Remote acquaintances? Are you OK with emails sent to you using that "goes by" name, or would that be way too informal (and how would the sender of the email know)? Are you supposed to write your legal name in the "full name" field exactly as written on your official documents (passport etc.), or would it suffice to use whatever you usually use (e.g. Beth Smith instead of Elizabeth Smith)? Should the "goes by" field include your family name if you have one? Do you need to give both if both are usually the same?

I fear such two fields would be even more confusing to users than the typical but widely used "given & family name" or similar, meaning the entity storing the data couldn't realistically make good use of it.

Of course there are instances where you need specific pieces of information, e.g. if you need a person's name as given on their passport (for official things such as crossing borders). And maybe it's useful to have an additional fields for more informal communication between that entity and you. But if that's the case (and I'd guess that such cases are really rare), be explicit in what you name those fields, really explicit, so that there's no doubt what they'll be used for. For example: "Name as written on your passport" and "Preferred name for us to use when communicating with you".

A fork for the time-zone database?

Posted Oct 11, 2021 15:04 UTC (Mon) by smurf (subscriber, #17840) [Link]

Easy. You don't ask "goes by", but "how would you like to be addressed when we send emails or letters to you".

As one datapoint, nowadays I need to provide all three of my "first" names on banking-related douments because of the current crop of gobsmackingly dumb regulations. But nobody should ever use anything but the second of those names to address me. No, not the first, and certainly not all three, I'm not the male equivalent of Pippi Longstockings dammit.

Now this is certainly a First World Problem compared to people who are named O'Hare and cannot even enter that due to broken Bobby Tables Prevention filters, much less my acquaintance Aahz (yes that's his single real-life name), or … the list goes on.

A fork for the time-zone database?

Posted Oct 10, 2021 20:07 UTC (Sun) by mpr22 (subscriber, #60784) [Link] (1 responses)

I go by (Forename) and am happy for corporate and governmental correspondence to open with "Dear (Forename)" (but also perfectly content for it to open with "Dear Mr (Forename)".

If I were more conservative about correspondence etiquette, I would expect it to open with "Dear Mr (Surname)"... but if I were that conservative about correspondence etiqutte and had a knighthood that they knew about, I would expect them to address me as "Sir (Forename)". And I would expect all of that without having to "jump through hoops" on their website, expecting simply putting my title, forename, and surname to be sufficient.

And as I am, I get mildly grumpy about letters opening "Dear (Forename) (Surname)" because they fall between two stools, satisfying neither my own casualism nor the standards expected by the formalist in my head.

A fork for the time-zone database?

Posted Oct 23, 2021 15:23 UTC (Sat) by nix (subscriber, #2304) [Link]

Every time this comes up I am obliged to post this, from years ago: http://itre.cis.upenn.edu/~myl/languagelog/archives/00138...

Given the perennial state of UK government software I'm sure this is all a thousand times better by now! (Oh wait, that was a typo. I meant "worse".)

A fork for the time-zone database?

Posted Oct 11, 2021 9:25 UTC (Mon) by farnz (subscriber, #17727) [Link]

Ultimately, the "right" thing to do is to have a "name for this purpose" field, provide some pre-fill features that helps someone with an expected naming convention fill in what you expect. Bear in mind that "full name" is itself ambiguous - is the full name "Paul Daniels" (which was the only name on much of his ID), or "Newton Edward Daniels" (as per his birth certificate, and marked as an additional full name on his passport)? You may even need multiple full names for one person…

A fork for the time-zone database?

Posted Sep 29, 2021 16:26 UTC (Wed) by dmoulding (subscriber, #95171) [Link] (8 responses)

Exactly. I can't stand that a lot of OS installers ask me for my time zone, and I have to pick America/Denver when I live in Salt Lake City. Yuck. (But, please, everyone, do ski Colorado!)

I'd much prefer if I could select, you know, the actual timezone I live in instead of the (not even nearest) large city that happens to be in the database. US/Mountain would make a lot more sense than America/Denver. What if Colorado decides to stop doing DST next year? Or what if Utah does? *grumble, grumble*

A fork for the time-zone database?

Posted Sep 29, 2021 17:49 UTC (Wed) by tialaramex (subscriber, #21167) [Link] (1 responses)

Because Denver is a city they actually have time there. People in Denver care what the time is, in Denver. You can call somebody there and ask, they'll have an answer. In contrast political "zones" like "Mountain" are arbitrary, politicians can create and change them as they please, and since nobody necessarily is keeping such a time its rules needn't actually make any sense whatsoever.

For example, suppose the government decides that it'd love to invent a new "Plains" zone that's half an hour off Mountain, except on a Tuesday or if Congress is in session, and then it's twice as much, or it isn't at all, either way. They can write that down, and that's your "Plains" zone. But, of course, this is utter nonsense and nobody will obey it.

If the local politicians dictate that now Salt Lake City shall follow Plains time, immediately they find they are obliged to actually make this work. Salt Lake City is hardly a sprawling metropolis, but it's big enough that it can't very well cope with this vague nonsense like "twice as much, or it isn't at all" and they must come to some sort of practical arrangement e.g. you know what, we'll skip this whole Tuesdays and Congress thing and just always be offset by +30 minutes. You may see similar with the need for lunar calendars, when somebody's multi-billion dollar business is on the line sure enough "Every night the village elder looks at the moon to decide if it's a new month" isn't good enough like it used to be and a model is used to deliver certainty instead. Having figured out how to actually make it work, it's now suitable for tzdb and (not coincidentally) also now useful to put in tzdb.

So, that's why America/Denver (a city, on a continent, which I expect will be there for centuries and maybe longer) rather than US/Mountain (wouldn't bet too much on either the US or Mountain time existing in a hundred years).

If you'd like to experience the other side of the coin, just use more Microsoft stuff. Some of their newer stuff uses the tzdb, but older stuff is wedded to Microsoft's implementation of exactly what you wanted. Presumably, them being Americans, it works out OK for the US. But for example, I have to pick GMT. It isn't GMT here, but that's what I have to pick, because that's the "zone".

A fork for the time-zone database?

Posted Sep 29, 2021 19:30 UTC (Wed) by mfuzzey (subscriber, #57966) [Link]

Yes but that's only valid for people living in cities that are used as time zone names.

So in your example that's great for those living in Denver but what about the next town?

How to group an infinite number of geographical points like cities, towns, villages into a finite number of time zones is still a political decision even if the zones are named after cities.

A fork for the time-zone database?

Posted Sep 29, 2021 18:15 UTC (Wed) by rsidd (subscriber, #2582) [Link] (1 responses)

Interesting. As a non-Bengali Indian living 1600+ km away from Kolkata, I can't say I feel any similar resentment when asked to pick "Asia/Kolkata" as my timezone. I haven't met anyone who complains about it, either. If anything, it's nice that Delhi is not picked as a "representative" city of India!

Kolkata is an odd choice since it was a relatively late entrant to IST (1948; IST was established in 1906). But hey, who cares.

A fork for the time-zone database?

Posted Sep 29, 2021 20:12 UTC (Wed) by magfr (subscriber, #16052) [Link]

The rule for which city to pick is "The one with most people" in order to avoid politics.

That almost did work but sadly Jerusalem got picked by the rule and now the Palestinian rule also wants Jerusalem.

Jerusalem should probably be on some kind of avoidance list as that city seems to trigger people.

A fork for the time-zone database?

Posted Sep 30, 2021 5:25 UTC (Thu) by interalia (subscriber, #26615) [Link] (2 responses)

People don't know their timezone names, and the short names like EST or MST are ambiguous. It seems like an accessibility problem, people don't want to say they are UTC+10, and that alone does not cover daylight savings, and extended version strings with the daylight saving changeover points do not cover historical dates before daylight savings being introduced, or changes to when it takes effect/ends. For example Sydney changed daylight savings specifically for the 2000 Olympics, but went back to normal afterwards.
Picking from a map helps by giving people a visual reference, but some people are also very bad at maps.

I guess the human-interface and the tzdb problems are technically independent, in that tzdb could ship with no zone names and just have a whole bunch of zones given SHA codes, with parent SHAs to cover historical changes - a bit like git branches. The human timezone names could just be tag-like references to these SHA codes, but whoever maintains this list of tags will face a similar problem of what names to include and what to exclude. And people would probably want it shared for consistency across apps and OSes, you wouldn't really want each library/language or OS to re-implement it differently.

A fork for the time-zone database?

Posted Oct 23, 2021 15:27 UTC (Sat) by nix (subscriber, #2304) [Link] (1 responses)

Honestly I suspect the user interface should just ask "Look at a clock on the wall. What time is it now?" and "Do you have to change your clocks twice a year?" and approximate an almost-always-right tzdb timezone from that. (But no doubt there are countless crazy cases in which this wouldn't work either.)

A fork for the time-zone database?

Posted Oct 23, 2021 16:54 UTC (Sat) by mpr22 (subscriber, #60784) [Link]

You need to also ask "do you live north or south of the equator?"

(At least, I'm assuming there might be somewhere in the southern hemisphere that has DST.)

A fork for the time-zone database?

Posted Oct 1, 2021 17:20 UTC (Fri) by chfisher (subscriber, #106449) [Link]

Of course you would then have to have US/Mountain-NODST to account for Arizona, which doesn't (for the most part) do Daylight Savings Time

A fork for the time-zone database?

Posted Sep 29, 2021 22:52 UTC (Wed) by mattdm (subscriber, #18) [Link] (10 responses)

When I was doing Boston University Linux, I got a request to have the time zone be America/Boston, not America/New_York. On the grounds that _New York_ isn't the hub of the universe!

On a more serious note, I was myself confused by this naming convention at the beginning of this week, updating my timezone temporarily to US West Coast. I'm in Seattle. Turns out that's... Los Angeles, a thousand miles away. Okay.

A fork for the time-zone database?

Posted Sep 30, 2021 1:59 UTC (Thu) by sfeam (subscriber, #2841) [Link] (9 responses)

"I'm in Seattle. Turns out that's... Los Angeles, a thousand miles away."

I use "America/Vancouver". It's a lot closer.

A fork for the time-zone database?

Posted Sep 30, 2021 2:48 UTC (Thu) by mattdm (subscriber, #18) [Link] (8 responses)

Heh.

But really, in seriousness: when you travel somewhere, how are you supposed to know what most populous city happens to follow the same timezone rules as that place? It shouldn't be a trivia contest.

A fork for the time-zone database?

Posted Sep 30, 2021 2:56 UTC (Thu) by corbet (editor, #1) [Link]

Hmm...I think I remember this "travel" thing of which you speak...

I long since gave up on putting the laptop on local time. It's always US/Mountain ("Denver" - annoying to us Boulder folks) in laptopland. The phone (almost) always figures things out on its own, so that's where I look for the time.

A fork for the time-zone database?

Posted Sep 30, 2021 8:28 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (1 responses)

In most cases, find a large city with a similar longitude to you, that's in the same country or jurisdiction. Of course, the "Berlin is CEST" thing buggers that up, but not as badly as you might expect because the aliases still exist (so if you put e.g. "Europe/Stockholm", most properly-designed apps should be fine with that, regardless of whether they have the new or the old version of tzdb, because the new version just aliases it to "Europe/Berlin").

A fork for the time-zone database?

Posted Sep 30, 2021 10:22 UTC (Thu) by SiB (subscriber, #4048) [Link]

Maybe "jurisdiction" should guide both granularity and naming of timezones. Hmm, how to cope with the time dependence of the jurisdiction?

A fork for the time-zone database?

Posted Oct 10, 2021 16:49 UTC (Sun) by ssmith32 (subscriber, #72404) [Link] (4 responses)

A good interface should have a map, with zones highlighted, and you just pick any city in the zone.

A fork for the time-zone database?

Posted Oct 10, 2021 16:59 UTC (Sun) by amacater (subscriber, #790) [Link] (3 responses)

The best interface isn't a map - what if you're visually impaired? What if a territory status is disputed? [Taiwan/Kosovo ...] The best
interace is probably a list.

A fork for the time-zone database?

Posted Oct 11, 2021 9:07 UTC (Mon) by farnz (subscriber, #17727) [Link]

The best interface is almost certainly based on geolocation (privacy risk!). Basically just identify where you are, and offer a list sorted by probability that it's your timezone based on your location. This is not a simple solution, mind.

A fork for the time-zone database?

Posted Oct 11, 2021 14:42 UTC (Mon) by smurf (subscriber, #17840) [Link] (1 responses)

What's your problem with territory status? Just display the map without country names.

Both lists and maps have serious shortcomings, but not to the same set of people. Thus you offer both, done.

A fork for the time-zone database?

Posted Oct 11, 2021 17:01 UTC (Mon) by excors (subscriber, #95769) [Link]

> What's your problem with territory status? Just display the map without country names.

It's still a problem if you omit the country names but show the borders: https://devblogs.microsoft.com/oldnewthing/20030822-00/?p...

> In early 1995, a border war broke out between Peru and Ecuador and the Peruvian government complained to Microsoft that the border was incorrectly placed. Of course, if we complied and moved the border northward, we’d get an equally angry letter from the Ecuadorian government demanding that we move it back. So we removed the feature altogether.
>
> The time zone map met a similar fate. The Indian government threatened to ban all Microsoft software from the country because we assigned a disputed region to Pakistan in the time zone map. (Any map that depicts an unfavorable border must bear a government stamp warning the end-user that the borders are incorrect. You can’t stamp software.) We had to make a special version of Windows 95 for them.

(And if you don't even show borders then it'll probably be very hard for most people to locate themselves on the map.)

A fork for the time-zone database?

Posted Sep 30, 2021 11:02 UTC (Thu) by jschrod (subscriber, #1646) [Link] (8 responses)

IMO the problem is usage of city names in the first place.

I'm from Germany. Every lay person here thinks that they live in the time zone CET / CEST. (Actually, MEZ / MESZ in German.) No non-computer-professional would recognize Europe/Berlin as a timezone designation in the first place.

I always thought that the Europe/* tz names were introduced as help for program or OS installations, where one can pick one's country. I.e., where the capital is used as a human representation of an ISO-country code. In fact, I always wondered why it's called Europe/Berlin and not Europe/Germany or even Europe/DEU.

Well, since some people here seem to be hellbound to remove DST anyhow, and different for each European country, this tzdb change won't live long anyhow.

A fork for the time-zone database?

Posted Oct 3, 2021 18:32 UTC (Sun) by marcH (subscriber, #57642) [Link] (7 responses)

While it may be true in Europe, timezones don't match countries in general. They don't even match US states.

I guess Timezones are labelled after cities because no politician has yet been crazy enough to separate a single city into multiple timezone.

A fork for the time-zone database?

Posted Oct 4, 2021 5:26 UTC (Mon) by alonz (subscriber, #815) [Link] (1 responses)

Well, they're still trying... (Note the mentions of Jerusalem in other comments).

A fork for the time-zone database?

Posted Oct 4, 2021 16:53 UTC (Mon) by marcH (subscriber, #57642) [Link]

For my defence I wrote: "politician not crazy enough", not: "religion" :-)

Once the afterlife gets involved, the possibilities become totally unlimited...

A fork for the time-zone database?

Posted Oct 7, 2021 6:44 UTC (Thu) by branden (guest, #7029) [Link] (4 responses)

"I guess Timezones are labelled after cities because no politician has yet been crazy enough to separate a single city into multiple timezone."

Nicosia called and wants its 1973 unified timezone back.

A fork for the time-zone database?

Posted Oct 9, 2021 9:43 UTC (Sat) by marcH (subscriber, #57642) [Link] (3 responses)

Granted, but moving an entire border to the middle of city takes much more than just "one crazy politician"

Anyway in such cases new names show up:"Northern Nicosia", "West Berlin" and problem solved.

A fork for the time-zone database?

Posted Oct 9, 2021 10:21 UTC (Sat) by Wol (subscriber, #4433) [Link] (2 responses)

As I said, what about Kansas City? That's got a state border running through the middle of it. That doesn't need resetting borders, all it takes is one state government changing time zone ...

Even Britain/London is a mess. Which London? And, just like New York City is not the capital of New York State, the capital of Britain is not the City of London, it's the City of Westminster about two miles away.

Borders might not move, but towns and cities do - another favourite example of mine is Dover, where the town centre is in the village of Charlton, about two miles from away from Dover itself (which historically is just Snargate Street, by Western Docks, for those who know the place).

I'm sure pretty much any historic country (which excludes the US, which is why they don't understand these things) will have plenty of examples. All it takes is a river, and then some invading army makes the river the border, and then towns get cut in half, or a bridge is built and towns merge, or or or ...

Cheers,
Wol

A fork for the time-zone database?

Posted Oct 23, 2021 15:38 UTC (Sat) by nix (subscriber, #2304) [Link] (1 responses)

> I'm sure pretty much any historic country (which excludes the US, which is why they don't understand these things) will have plenty of examples

I dunno. Even countries newer than the US, like Canada, have examples, some of which involve changes that don't even involve changing the clocks, just the zone. In my (rather old) tzdb copy, Chris Walton says:

# On March 11/2007 most of Canada went onto daylight saving. On March
# 14/2007 I phoned the Resolute Bay hamlet office to do a "time check." I
# talked to somebody that was both knowledgeable and helpful. I was able
# to confirm that Resolute Bay was still operating on UTC-5. It was
# explained to me that Resolute Bay had been on the Eastern Time zone
# (EST) in the winter, and was now back on the Central Time zone (CDT).
# i.e. the time zone had changed twice in the last year but the clocks
# had not moved. The residents had to know which time zone they were in
# so they could follow the correct TV schedule...

(The US has examples of single towns where this was contended, so some residents historically followed one timezone and others followed another. As far as I can tell, *anything*, no matter how ludicrous, has been done somewhere, somehow, by someone where timezones are concerned.)

A fork for the time-zone database?

Posted Oct 23, 2021 19:51 UTC (Sat) by marcH (subscriber, #57642) [Link]

> > As I said, what about Kansas City? That's got a state border running through the middle of it. That doesn't need resetting borders, all it takes is one state government changing time zone ...

Exactly why timezones are city based and don't follow state lines.

Was the Kansas metro ever split into more than one timezones? If it ever was, just name the zones after some other cities that were not split.

> I was able # to confirm that Resolute Bay was still operating on UTC-5

Yet no one ever felt the need for a Resolute Bay time zone.

> As far as I can tell, *anything*, no matter how ludicrous, has been done somewhere, somehow, by someone where timezones are concerned.)

Sure but has it ever been a problem finding a(nother) city to name it? Worst case call it west Jerusalem and done.

A fork for the time-zone database?

Posted Sep 29, 2021 15:19 UTC (Wed) by nilsmeyer (guest, #122604) [Link] (2 responses)

Technically for quite a while in recent history Berlin was located in two countries (or rather two countries in Berlin?). I can only imagine the arguments this may cause in contested regions.

Given the number of computers running there one might also consider adding Martian time zones to the mix.

A fork for the time-zone database?

Posted Sep 29, 2021 18:10 UTC (Wed) by Wol (subscriber, #4433) [Link]

I think they're actually in the same time zone, but most of Kansas City isn't in Kansas State ...

Cheers,
Wol

A fork for the time-zone database?

Posted Sep 30, 2021 8:41 UTC (Thu) by NYKevin (subscriber, #129325) [Link]

You can't do Martian time in tzdb, unless you completely redesign tzdb first.

Martian sols are not 24 hours long, so you would need to change the UTC offset every sol (Martian day) to keep it in sync. The least-bad way to do that is probably a set of DST rules configured such that a new DST offset takes effect at the end of each sol, but that would take up a prohibitive number of entries in the tzdb. And I'm not sure if you could even reuse those entries next year, because the Martian calendar would fall out of sync with the terrestrial calendar, so you'd need a new set of DST rules for each year. You could probably write software to automatically generate these entries, but at that point you might as well not use tzdb in the first place.

A fork for the time-zone database?

Posted Sep 29, 2021 8:21 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (1 responses)

> Unfortunately, the equity issue has broadened and is now visible outside our little community, and I really and sincerely doubt whether it'd be a good idea for us to do nothing about it now. We need to establish that we are fixing the problem and are not deferring action to a never-never land of arcane bureaucracy, and we need to do so in terms that will be clear to outsiders.

Why the heck "equity" is used to justify all kinds of moronic changes? There's no pressing demand to save a few kilobytes by merging timezones. If you want equity, then just go and put in more TZ entries for underserved territories.

A fork for the time-zone database?

Posted Sep 30, 2021 11:34 UTC (Thu) by immibis (subscriber, #105511) [Link]

It's not. It's being used to justify *this* moronic change. You cannot extrapolate from one incident.

A fork for the time-zone database?

Posted Sep 29, 2021 15:27 UTC (Wed) by martin.langhoff (subscriber, #61417) [Link]

Many (many!) moons ago I've written Olson file parsers, and worked to ensure broad support for obscure quirks... The tzdb format is way overdue for an overhaul, and perhaps a test suite in a portable language that helps validate parsers.

One of the obvious things is to decouple the TZ identifiers from locations – then a specific TZ can have (a) a stable identifier to 'anchor' localizations, and (b) as many alternate names as needed to satisfy cultural and political needs.

A new format might have "transition" pointers -- before X date, use this other TZ, after Y date use this other TZ. All of this will need new infra, but things don't change until you start changing them. And folks agitating for better support can be pulled into porting old software to new libraries.

Needless to say, the legacy format will need to live on (until 2038? ;-) ), but hopefully we don't have to argue too much about it.

A fork for the time-zone database?

Posted Sep 29, 2021 15:28 UTC (Wed) by martin.langhoff (subscriber, #61417) [Link]

Many (many!) moons ago I've written Olson file parsers, and worked to ensure broad support for obscure quirks... The tzdb format is way overdue for an overhaul, and perhaps a test suite in a portable language that helps validate parsers.

One of the obvious things is to decouple the TZ identifiers from locations – then a specific TZ can have (a) a stable identifier to 'anchor' localizations, and (b) as many alternate names as needed to satisfy cultural and political needs.

A new format might have "transition" pointers -- before X date, use this other TZ, after Y date use this other TZ. All of this will need new infra, but things don't change until you start changing them. And folks agitating for better support can be pulled into porting old software to new libraries.

Needless to say, the legacy format will need to live on (until 2038? ;-) ), but hopefully we don't have to argue too much about it.

London is on Berlin time?

Posted Sep 29, 2021 15:48 UTC (Wed) by Wol (subscriber, #4433) [Link] (42 responses)

Well, actually it is - certainly according to our radio-controlled clock.

Meanwhile, Berlin is currently on Moscow time.

Shouldn't the time zone data be kept separate from the location data? And you just have a link from the location to the appropriate time zone. Okay, this does make it a bit difficult to go back from time zone to location, but surely going "Oslo -> CEST -> Berlin" is a stupid thing to do, anyway. Timezone to location is a one->many link and there's no such thing as a definitive answer!

And how does the database cope with towns that have had borders (and timezones) move around them?

So to take the example given, sure let's merge all the post-1970 European stuff into a zone CALLED CEST. Then Oslo could be a link that says "post 1970 -> CEST, pre 1970 -> Norway". And CEST would have nothing to do with Berlin ... :-)

And our hypothetical town on the Norwegian-Finnish border would be a link to "post nnnn -> Norland, pre nnnn -> Finway".

Cheers,
Wol

London is on Berlin time?

Posted Sep 29, 2021 17:03 UTC (Wed) by smurf (subscriber, #17840) [Link] (1 responses)

Umm, why would you want to call that zone CEST? That 's only mostly-sane during the summer (or rather non-winter given the times when it's turned on and off).

Europe/Central would be much more appropriate.

NB: At least Samoa gave us more than a week's notice. We should be grateful. Wasn't there some country a few years ago that decided three measly days before the time of the switch?

London is on Berlin time?

Posted Sep 29, 2021 21:36 UTC (Wed) by NYKevin (subscriber, #129325) [Link]

That would be Egypt, when they abruptly canceled DST in 2016. They also had a history of instability here, with DST abolished in 2011, reinstated in 2014, and then "temporarily" canceled in 2015, ostensibly so that they could study how well it worked in 2014. But the tzdb people cannot be reasonably expected to read the tea leaves and predict the political machinations of ~200 countries all at the same time.

London is on Berlin time?

Posted Sep 29, 2021 17:45 UTC (Wed) by NYKevin (subscriber, #129325) [Link] (39 responses)

The problem with giving timezones names is that you basically have a bunch of bad options, and no obvious "right" option:

  • The short abbreviations (MST, CEST, etc.) are not all universally unique. For example, MST could be Mountain Standard Time in the US, or it could be Malaysia Standard Time. Nobody has the authority to enforce uniqueness and there is no ISO standard for these abbreviations. People just make them up as they go. I could rattle off a long list of collisions, but I think you get the point.
  • Official names like "Central European Summer Time" are long, contain spaces, and may be unfamiliar or confusing to some end users (Taiwan apparently calls their timezone "National Standard Time"). More importantly, they are not stable, as timezone names have changed in the past.
  • UTC offsets are also unstable (for the civil time use case), and for historical data they can be very weird since UTC itself is a relatively young standard. Not all end users know their UTC offset.
  • You could name timezones by location, but then you have to pick a level of granularity, and all possible choices of level will annoy somebody:
    • If you name the entire country, then you have to contend with countries containing multiple zones. There's no obvious way to disambiguate.
    • If you name the "region, state, province, etc." then you have to contend with countries that don't do that, or countries that do that differently. Localization becomes very complicated. Do you want to call it "Taiwan" or "Chinese Taipei"? What about "Taiwan, Province of China"? All three of those options will offend a large number of people if displayed in a UI (with the major difference being which large group of people you offend).
    • If you name the largest (most populous) city in the zone, then you're going to annoy everyone who lives in the zone but not in that city. OTOH, most people agree on what counts as a "city," especially when we're talking about large cities that could realistically be the largest in the zone. So localization is easier and you get into fewer arguments. But then you have to decide whether to unify identical zones across country borders or not, which leads to the "Berlin is CEST" vs. "we're going to have a whole bunch of separate zones that are functionally equivalent to each other" problem. Either you have a bunch of extra entries taking up space, or you have a bunch of people who not only have the indignity of selecting a city they don't live in, but have to select a country they don't live in.
  • Apparently, older versions of Windows used to display a map and ask the user to visually select a timezone. But they don't do that anymore, because every disputed territory in the world promptly attracted complaints from whoever didn't like the way it was displayed in the map.

The Olson database goes with the Continent/City notation, mostly because it is supposed to require the least amount of localization work (just need the localized name of each city and continent) and is unlikely to run into issues of disputed sovereignty etc. As for "Berlin is CEST," they try to solve that problem by offering aliases (so you can just as well pick "Stockholm" or "Paris" or whatever you fancy, and still get correct local civil time), but some people find this unsatisfactory for the reasons explained in the article.

London is on Berlin time?

Posted Sep 29, 2021 18:17 UTC (Wed) by Wol (subscriber, #4433) [Link] (1 responses)

> The short abbreviations (MST, CEST, etc.) are not all universally unique.

:-)

In London, we're currently on BST. But that's not (the "official" one) Bering Straits Time.

Cheers,
Wol

London is on Berlin time?

Posted Sep 29, 2021 23:09 UTC (Wed) by nowster (subscriber, #67) [Link]

And then there is Ireland which is unusual in that Irish Standard Time is in operation in summer and the daylight savings time operates in winter, and is GMT.

http://www.irishstatutebook.ie/eli/1971/act/17/enacted/en...

London is on Berlin time?

Posted Sep 30, 2021 15:38 UTC (Thu) by nim-nim (subscriber, #34454) [Link] (34 responses)

> The problem with giving timezones names is that you basically have a bunch of bad options, and no obvious "right" option

There is an obvious good option – use country for countries that do not span multiple zones, and country/local-zone-name for the others.

Do not allocate a territory to some state that does not control it, do not invent zone names the locals do not use or understand, do not try to reform the whole planet to make it follow some kind of funky rule you invented before breakfast. If people in some part of the world can not agree on who owns what, alias both names and let them settle things by themselves.

All the funky rules you can invent will pour oil on the fire by favoring one party over another, just say no and leave politics to politicians, activists and other people that care nothing about time zones except as a pawn in some other game.

London is on Berlin time?

Posted Sep 30, 2021 16:48 UTC (Thu) by Wol (subscriber, #4433) [Link]

> > The problem with giving timezones names is that you basically have a bunch of bad options, and no obvious "right" option

> There is an obvious good option – use country for countries that do not span multiple zones, and country/local-zone-name for the others.

Exactly. Well, actually, call the time zone whatever the locals call it, prefixed by the 2-letter iso country designation (with exceptions for whatever the country code exceptions are) so we'd have UK-GMT, EU-CET, US-MST. (Along with UK-BST, RU-BST and US-BST ... :-)

Then each of the place links says which timezone is valid for what times.

Half the problem seems to be the maintainer's confusion as to the difference between a timezone, a place, and a political jurisdiction. You CANNOT store accurate data if you do not account for all three separately.

(And this seems to be why people are upset - that the data is being corrupted ...)

Cheers,
Wol

London is on Berlin time?

Posted Sep 30, 2021 16:55 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (32 responses)

> There is an obvious good option – use country for countries that do not span multiple zones, and country/local-zone-name for the others.

Then you have to decide whether Kosovo, South Ossetia, Taiwan, etc. are "countries" or not. Also, according to https://en.wikipedia.org/wiki/List_of_states_with_limited..., at least one UN member does not recognize each of China (PRC), Israel, (South) Korea, (North) Korea, Cyprus, and Armenia, despite the fact that all of those countries are themselves UN members.

OTOH the "city" paradigm runs into Jerusalem (which may or may not have two timezones depending on who you ask, what religion they follow, how they feel about the one/two state solutions etc.). But that sort of dispute over individual cities seems to be much rarer than disputes over larger territories.

London is on Berlin time?

Posted Sep 30, 2021 17:30 UTC (Thu) by Wol (subscriber, #4433) [Link] (18 responses)

How does ISO do it? Just because the UN may or may not recognise a country doesn't mean it doesn't exist.

As said elsewhere, what do the LOCALS think? And if they can't decide, provide both.

I believe the ISO system is pragmatic, just use that - hence EU, UK, various other country codes ...

Cheers,
Wol

London is on Berlin time?

Posted Sep 30, 2021 17:41 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (17 responses)

According to https://en.wikipedia.org/wiki/ISO_3166-1#Criteria_for_inc..., the UN is exactly who gets to decide whether or not a given jurisdiction has an ISO country code. The ISO is not some mystical entity that lives on top of a mountain and has a magical ability to divine what the "locals" may think of a given situation.

Also, UK is not an ISO country code. The code for the United Kingdom is GB. The .uk TLD was allocated by IANA as a favor to the UK (mostly because they had already been using it before the ccTLD system existed). ISO had nothing to do with that.

London is on Berlin time?

Posted Sep 30, 2021 21:45 UTC (Thu) by Wol (subscriber, #4433) [Link] (16 responses)

Where does .eu come from then? IANA again? That's not a country. And again, what happens with historical data? I don't know when ISO_3166 was started, but Austro-Hungary probably never had a ISO code, but could possibly have had summer time.

Who is actually in charge of the tzdb? ISO? IANA?

(And yes I know all about UK not being an ISO code. After all, it's the suffix on my email address! And I know all about Ukraine wanting UK as their ISO code until they discovered it was blocked ... I had a Ukrainian girlfriend for a while.)

Cheers,
Wol

London is on Berlin time?

Posted Oct 1, 2021 1:06 UTC (Fri) by NYKevin (subscriber, #129325) [Link] (15 responses)

> Where does .eu come from then? IANA again? That's not a country.

I may have mixed up IANA and ICANN (one of them does IP addresses and the other does domain names, and I can never keep them straight in my head), but essentially yes. EU and UK are both "exceptionally reserved" by ISO to avoid confusion, but are not considered ISO codes. The DNS people made exceptions for both of them, in part because they were already reserved on the ISO side, and in part because they didn't really have a good reason to say "no."

Also of note: ISO assigns codes to several jurisdictions which nobody thinks of as a "country," such as Puerto Rico (there is an active movement for US statehood, but nobody seriously claims that Puerto Rico is independent of the US, either de facto or de jure). Oddly, this includes Antarctica, which isn't really a "jurisdiction" at all (there is no permanent, continent-wide governing authority, and the authority of governments to enforce laws within their respective territorial claims is limited by the terms of the Antarctic Treaty System). In practice, Antarctica uses UTC regardless of longitude, so we can arguably just ignore it, but it is on the list.

The ISO standard does include a flag which indicates whether the UN considers each jurisdiction to be "independent" or not, so you can just ignore the non-independent ones if you like. Taiwan, as you might expect, is flagged as non-independent, because that's the official position of the UN. ISO does not provide any other means of distinguishing between "a country" and "not a country," so if you want to call Taiwan a country and Antarctica (or Puerto Rico) not a country, you have to come up with your own list instead of using ISO's list.

> And again, what happens with historical data? I don't know when ISO_3166 was started, but Austro-Hungary probably never had a ISO code, but could possibly have had summer time.

Which is yet another reason to avoid using ISO codes and just use Continent/City, as tzdb does. Europe/Vienna still exists today. A hypothetical ISO-based Austria-Hungary timezone, however, would've had to be migrated at some point, as ISO has a policy of releasing codes once they are no longer used. Such codes are reserved for quite a long time in most cases, but can eventually be reassigned to another country. OTOH, they reassigned RU from the USSR to the Russian Federation rather quickly, because the latter is recognized as the successor state of the former. This would have broken the timezones of various former Soviet Republics, if using an ISO-based timezone scheme.

(I have no idea what the timezone of Austria-Hungary was, but Wikipedia says that DST was actually invented in Germany and Austria-Hungary, at least at a national scope, anyway. So yes, they did have DST rules.)

> Who is actually in charge of the tzdb? ISO? IANA?

tzdb is nominally "organized" by ICANN, but in practice I believe it operates much like a standard FOSS project.

London is on Berlin time?

Posted Oct 1, 2021 17:12 UTC (Fri) by Wol (subscriber, #4433) [Link] (14 responses)

> Which is yet another reason to avoid using ISO codes and just use Continent/City, as tzdb does.

Not for the political entity that defines what the timezone is!

GMT/BST is defined by the UK government. Portugal, and South Africa, while both lying on the Prime Meridian, use different time zones, Portugal I believe is on CET, South Africa I don't have a clue.

Continent/City should be used to SELECT which time zone(s) apply. From my point of view, I couldn't care whether it's UK/Greenwich, England/London, Scotland/Edinbugh or what. That would contain a link to a timezone of GB-GMT.

But, to pick on a country I've mentioned, When did Portugal switch from local (GMT) to CET time? Portugal/Lisbon should NOT return the time zone data for Berlin because at some time in the not so distant past it was different.

So if the user selects Portugal/Lisbon, it should say something like "1970-present EU-CET, pre-1970 PT-PST" (for poruguese standard time or whatever they called it before they went on to CET.

At the end of the day, location and time zone are two completely different things, and SHOULD NOT be referred to by the same identifier.

Cheers,
Wol

London is on Berlin time?

Posted Oct 1, 2021 18:06 UTC (Fri) by mpr22 (subscriber, #60784) [Link]

> Portugal, and South Africa, while both lying on the Prime Meridian

No part of the Portuguese mainland lies on or east of the Prime Meridian, and large parts of it lie west of 7.5°W.

No part of the South African mainland is less than 15°E of the Prime Meridian. Cape Town, which isn't quite the westernmost point but is certainly the westernmost major city, is 18°E. Johannesburg and Pretoria are 28°E, Pietermaritzburg is 30°E, Durban is 31°E, and South African Standard Time, used nationwide, is entirely sensibly UTC+0200 year-round (there is no DST in South Africa).

> When did Portugal switch from local (GMT) to CET time?

Portugal is currently, and was historically, on WET (UTC+0000 / +0100).

Between 1966-76 and 1992-1996, Portugal was on CET (UTC+0100 winter time).

And in Lisbon (9°W), the mean solar azimuth at 12:00 standard time / 13:00 DST over the course of the year tells you that you should be on UTC-0100 / +0000 if using one-hour-aligned time zones.

London is on Berlin time?

Posted Oct 2, 2021 20:08 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (12 responses)

If nobody ever selects GB-GMT in a UI, what is the point of GB-GMT even existing? Why not just put it under Europe/London directly? What is the actual, real-world problem that an extra layer of indirection would solve?

London is on Berlin time?

Posted Oct 2, 2021 20:24 UTC (Sat) by Wol (subscriber, #4433) [Link]

Because you'll upset the Scots and Welsh? And what if they end up going for independence and diverge? At the moment, Edinburgh and Cardiff don't have the authority to change things, but things may change.

More to the point, it does NOT work for Europe. Timezones and political jurisdictions do NOT align, so don't use the same key to reference both. Likewise, it doesn't work for the US. Just because multiple US states. and multiple EU countries have *chosen* to share a time zone, doesn't mean things won't change. There is a lot of talk about Britain going on to CET/CEST, but the Scots in particular are extremely unhappy about that.

If the TIMEZONE is independent from the POLITICAL, then if England/London decides to change while Scotland/Edinburgh doesn't, then separating timezone from location makes the change dead simple. If the timezone is called Britain/London, it's a lot more involved.

Cheers,
Wol

London is on Berlin time?

Posted Oct 2, 2021 20:41 UTC (Sat) by Wol (subscriber, #4433) [Link] (10 responses)

> What is the actual, real-world problem that an extra layer of indirection would solve?

Data Integrity?

After all, isn't the big complaint about this change that it is CORRUPTING HISTORICAL DATA.

Rule One of data integrity, Do Not Store Unrelated Data In The Same Table. If you mix time data and location data (as is being pushed here) you are doing exactly that!

You store your timezones in one table, and you store your locations in a separate table. Then you have a link that contains location, dates, and timezones, that says which timezone applies where and when. At which point your database is robust and resistant to political screw-ups.

Unlike the present mess where the maintainer is wilfully trashing the historical information, and setting the system up for a major mess if countries decide to shift timezones - as indeed the UK has been talking about doing ...

(I'm a database guy. I dislike relational because it insists you splat data referring to one object across multiple tables, which causes loads of trouble. But the opposite also holds - plonking data referring to multiple objects in one table causes just as much if not more trouble!)

Cheers,
Wol

London is on Berlin time?

Posted Oct 3, 2021 4:51 UTC (Sun) by NYKevin (subscriber, #129325) [Link] (9 responses)

There are two kinds of objects here:

* A UTC offset is a (possibly fractional) signed number, usually written as e.g. UTC+5 (or whatever number you want).
* A timezone is a set of rules for deciding which offset to use. tzdb uses names such as Europe/Berlin for them, but there are a variety of other names you could use instead (CET/CEST, "Central European Time", etc.).

tzdb does not mix those two types of object up. It is very clearly structured as mapping timezones to UTC offsets (or more specifically, to lists of offsets along with the dates and times when those offsets went into effect). Therefore, I can only surmise that you are talking about yet another type of object, which is not listed above, but I simply cannot visualize such an object as relevant to the problem at hand.

The whole point of tzdb is that you pick e.g. Europe/Berlin, or Europe/Paris, or America/New_York, or whatever you fancy, and then it tracks the local time in that city indefinitely into the future, regardless of geopolitical upheaval. It is very deliberately jurisdiction-agnostic. Imagine, for a moment, that tzdb was around before World War I. Then Europe/Vienna would have tracked Austro-Hungarian law on DST etc., and everyone in the Vienna metropolitan area would be following the Europe/Vienna timezone. Similarly, everyone in the Budapest metro area would be following Europe/Budapest, which would also track Austro-Hungarian law. After the war, Austria-Hungary ceased to exist, and therefore Europe/Vienna would have transparently updated to follow Austrian law, and Europe/Budapest would have transparently updated to follow Hungarian law.

Under your proposal, everyone would need to go into their settings and switch from the no-longer-existent Austria-Hungary to the Austrian jurisdiction or Hungarian jurisdiction explicitly. Or else some piece of software would have to figure out whether the user is now Austrian or now Hungarian, and update the settings without telling the user, and we would have to hope it got it right. But under the tzdb system, everything Just Works™ because the timezones were never tied to jurisdictions in the first place.

In short: You are proposing the addition of a third type of data, and I still don't understand what that type is intended to accomplish, in terms of solving a real-world problem that is not already solved by the existing system. It's fine to talk about normalization, but this schema is already normalized.

London is on Berlin time?

Posted Oct 3, 2021 7:07 UTC (Sun) by smurf (subscriber, #17840) [Link] (7 responses)

> The whole point of tzdb is that you pick e.g. Europe/Berlin, or Europe/Paris, or America/New_York, or whatever you fancy, and then it tracks the local time in that city indefinitely into the future, regardless of geopolitical upheaval.

Yeah, that is/was the idea. The whole brouhaha we're discussing here originates in the brain-dead (IMHO) idea that right now Europe/Stockholm and Europe/Berlin are the same, and Berlin is larger than Stockholm, so the tzdb maintainer feels free to alias the former to the latter – regardless of the fact that this is not historically correct. Plus, if Stockholm ever decides to diverge from Berlin's rules in the future, a rather inconveniently large number of Swedes will need to update their tzdb and then manually fix their timezone settings.

London is on Berlin time?

Posted Oct 3, 2021 18:47 UTC (Sun) by Wol (subscriber, #4433) [Link] (1 responses)

EGGSACKERLEY !!!

Now let's throw in the FACT that - even right now - Berlin does not have the authority to decide what timezone Stockholm follows, and aliasing Berlin to Stockholm is just plain stupid.

Okay. Let's (for the sake of convenience/accuracy/whatever) call our base timezones "Meridian0" or "Meridian150W" or "Meridian900E" etc. (I've multiplied latitude by 10 so it makes half-hour zones easier - go back to 1800 or so and Bristol would have been "Meridian75W" by that standard...)

Then we have the POLITICAL AUTHORITY that sets summer time - probably the EU that says "Summertime starts last Sunday in March, ends last Sunday in October, at 0100 Meridian150W" - lets call those rules EU-EST.

And lastly we have Sweden/Stockholm that says "base meridian is Meridian150W, Daylight saving is EU-EST, applies 1970 onwards" or whatever.

Then if a country decides to change timezone, eg the UK shifts to European time, we just change Britain/London to say Meridian0 until 2024, Meridian150W from 2025, EU-EST applies from 1970 onwards".

As smurf says, the idiocy is in keying a bunch of TIMEZONE data on a city LOCATION. Which fucks up any other cities that just happen at present to be in the same time zone. Imagine what grief it's going to cause if Britain DOES go onto CET/CEST and tzdb changes our timezone to Berlin ... (or rather, changes Berlin time to London!!!)

Cheers,
Wol

London is on Berlin time?

Posted Oct 3, 2021 19:10 UTC (Sun) by amacater (subscriber, #790) [Link]

The Leonard Cohen school of tzdb - "First we take Manhattan, then we take Berlin" doesn't really work, does it.

London is on Berlin time?

Posted Oct 3, 2021 19:50 UTC (Sun) by jrn (subscriber, #64214) [Link] (4 responses)

> Plus, if Stockholm ever decides to diverge from Berlin's rules in the future, a rather inconveniently large number of Swedes will need to update their tzdb and then manually fix their timezone settings.

I agree about needing to update tzdb (this is a fact of life in all jurisdictions, since we cannot predict the future), but why would they need to update their settings instead of continuing to use Stockholm like they were already doing? It's not like this tzdata update makes "TZ=Europe/Stockholm" stop working.

London is on Berlin time?

Posted Oct 3, 2021 22:36 UTC (Sun) by Wol (subscriber, #4433) [Link] (2 responses)

Except that Europe/Stockholm WILL stop working (correctly).

Because this change means that the real Stockholm will be deleted and lost.

Which means that the historical data used for Stockholm will actually be the data for Berlin (which may, or may not, be the same).

Cheers,
Wol

London is on Berlin time?

Posted Oct 4, 2021 18:40 UTC (Mon) by smurf (subscriber, #17840) [Link]

Surprise: They are not.

London is on Berlin time?

Posted Oct 4, 2021 22:28 UTC (Mon) by anselm (subscriber, #2796) [Link]

Which means that the historical data used for Stockholm will actually be the data for Berlin (which may, or may not, be the same).

Right now, two minutes with zdump should make it obvious that they're emphatically not the same.

London is on Berlin time?

Posted Oct 4, 2021 18:47 UTC (Mon) by smurf (subscriber, #17840) [Link]

Yes it will stop working. (Ignoring for the moment that it already doesn't work for certain dates before 1970.) The system will notice that E/Stockholm is an alias for to E/Berlin and it *will* store the latter.

And since neither Eggbert nor anybody else can predict whether that alias holds in the future, adding such an alias is Just Plain Wrong.

London is on Berlin time?

Posted Oct 4, 2021 12:30 UTC (Mon) by Wol (subscriber, #4433) [Link]

> The whole point of tzdb is that you pick e.g. Europe/Berlin, or Europe/Paris, or America/New_York, or whatever you fancy, and then it tracks the local time in that city indefinitely into the future, regardless of geopolitical upheaval. It is very deliberately jurisdiction-agnostic.

The problem, timezones are NOT jurisdiction-agnostic.

LOCAL (ie solar) time is jurisdiction-agnostic. But it's the politicians who decide what timezone applies to the country as a whole. They might like to think their jurisdiction extends to the sun, but I think I know who (or what) would win THAT battle :-)

Cheers,
Wol

London is on Berlin time?

Posted Sep 30, 2021 18:50 UTC (Thu) by nim-nim (subscriber, #34454) [Link] (12 responses)

From an operational POW Kosovo, South Ossetia, Taiwan are all able to decide whether to use DST or not, and the locals (including the locals that disagree with Kosovo, South Ossetia, Taiwan, existing as independent countries) will need to adjust their clocks to this decision if they want their children to get to school in time (to take a basic example).

Thus, you *can* *not* wipe out those territories to please someone’s idea of political border even if you wanted to.

And then making both version of ownership exist at the same time is just a matter of aliasing as long as you’re smart enough to make all aliases point to a neutral key (for example a longitude+indice value) and not the name of someone else’s capital.

London is on Berlin time?

Posted Sep 30, 2021 20:34 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (11 responses)

> Thus, you *can* *not* wipe out those territories to please someone’s idea of political border even if you wanted to.

This is why cities are (usually) superior to countries (except for Jerusalem, which is a whole other level of political-messed-upness).

> And then making both version of ownership exist at the same time is just a matter of aliasing as long as you’re smart enough to make all aliases point to a neutral key (for example a longitude+indice value) and not the name of someone else’s capital.

That breaks on Jerusalem just as much as calling it "Jerusalem" would. The problem is that the individual people living within the city go by different timezones depending on their nationality and the extent to which they personally recognize Israeli jurisdiction over the city. You can't lat/long your way out of that. If you try using numerical indices, then somebody has to be "first" and somebody has to be "second," and they'll argue over that instead.

London is on Berlin time?

Posted Oct 1, 2021 2:00 UTC (Fri) by nybble41 (subscriber, #55106) [Link] (3 responses)

Any organization significant enough to be defining time zones would have its own domain name, right? That ought to be true even if the political situation is "complicated" in terms of who actually has jurisdiction over the territory. So why not just use DNS, e.g. <tz://transportation.gov/Eastern> for Eastern Time in the US (where the Department of Transportation defines the time zones)? Ideally each time zone authority would publish the data about the zones it manages at a well-known URL and the time-zone database would only need to collate the results.

London is on Berlin time?

Posted Oct 1, 2021 6:59 UTC (Fri) by NYKevin (subscriber, #129325) [Link] (2 responses)

You cannot realistically expect a small island nation in the Pacific, whose primary economic activity is fishing, to run and maintain such a server, unless they derive some real (monetary) benefit from doing so. The same applies to many other countries throughout the world.

Also, anybody can register a domain name. You have to have a more selective set of criteria than that. If you go by "does it have a ccTLD?" then you're right back to ISO country codes, but now they're wearing a funny hat.

London is on Berlin time?

Posted Oct 1, 2021 15:32 UTC (Fri) by nybble41 (subscriber, #55106) [Link] (1 responses)

> You cannot realistically expect a small island nation in the Pacific, whose primary economic activity is fishing, to run and maintain such a server…

If they can afford to publish rules about their time zone then they can afford a few dollars a month for a domain name and some shared hosting capacity.

> Also, anybody can register a domain name.

Sure, and that's kind of the point. There should be some notability threshold for pulling the data into the collated time-zone database, just as a spam prevention measure, but I see no reason whatsoever to impose any further limits on who can publish time-zone information. If there are real people following the time zones some organization publishes then that organization's zones should be listed.

London is on Berlin time?

Posted Oct 10, 2021 0:40 UTC (Sun) by flussence (guest, #85566) [Link]

A lot of island nations are making bank off of selling vanity domains, so money isn't an object. The bigger problem is that they often outsource management of the ccTLD to not-quite-upstanding third parties on the other side of the world. Putting timezones into the same system isn't such a good idea in that case.

London is on Berlin time?

Posted Oct 1, 2021 8:19 UTC (Fri) by nim-nim (subscriber, #34454) [Link] (5 responses)

Strawman.

The indice of the zone aliased to would be the same.

Because *operationally*, even if people disagree on who owns what, trains still have to leave on time, schoolchildren still have to go to school on time, so there is only one timezone in operation at any given time in a particular territory.

So the *correct* answer to cases like Taiwan is to have
China/Taiwan and Taiwan exist at the same time in the database as aliases and point to a technical neutral key like 121.some_indice

Which is *exactly* the reverse of the TSDB move.

In real life you do not resolve arguments Salomons’ way with rash decisions everyone disagrees with (moreso when you *ability* to make fictitious grouping exist is nil). You resolve arguments by giving something to every party.

Especially in IT where aliases and indirections are the norm.

London is on Berlin time?

Posted Oct 2, 2021 20:02 UTC (Sat) by NYKevin (subscriber, #129325) [Link] (4 responses)

> Because *operationally*, even if people disagree on who owns what, trains still have to leave on time, schoolchildren still have to go to school on time, so there is only one timezone in operation at any given time in a particular territory.

This is incorrect. In Jerusalem, they *don't* agree on what the local time is (or, to be more precise, they don't agree on exactly when DST begins and ends). This *does* cause the exact disruptions you identify, and yet they disagree anyway. The same is also applicable to some of the western regions of China (because China insists on having one timezone for the whole country, despite the country being far too wide for this to make logical sense), where different communities are on different offsets and will informally indicate times as "local" or "Beijing" time (the "local" timezone doesn't officially exist, so it's not in tzdb, but people use it).

London is on Berlin time?

Posted Oct 2, 2021 22:36 UTC (Sat) by mathstuf (subscriber, #69389) [Link] (1 responses)

> where different communities are on different offsets and will informally indicate times as "local" or "Beijing" time (the "local" timezone doesn't officially exist, so it's not in tzdb, but people use it).

AFAIU (based on podcast data), it actually differs based on the language being spoken (rather than being explicitly labeled as such). Speaking Chinese, time is Beijing-offset. Speaking the local language, time offsets are a more sensible offset.

London is on Berlin time?

Posted Oct 3, 2021 4:54 UTC (Sun) by NYKevin (subscriber, #129325) [Link]

Ah, thank you for the correction. Of course, that's even *worse*, because now we're roping in the notoriously-terrible POSIX locale mechanism...

London is on Berlin time?

Posted Oct 3, 2021 8:48 UTC (Sun) by ghane (guest, #1805) [Link]

Asia/Urumqi is in the TZ database, and was added precisely because it was documented that people are using it. It UTC+6, Beijing (or Shangai) is UTC+8

https://en.wikipedia.org/wiki/Xinjiang_Time

London is on Berlin time?

Posted Oct 4, 2021 13:35 UTC (Mon) by nim-nim (subscriber, #34454) [Link]

It is not possible to disagree on train time because two trains in the same place at the same time = lots of deaths.

People can disagree on what zone the entity that schedules trains should use to display scheduling but this entity is most definitely knows what timezone it uses for scheduling decisions.

There is a strong temptation to roundtrip between physical location, timezone and political authority. That does not work. That will never work. It’s not a one-to-one relationship.

Labeling timezones with city names (and worse, country capital names) is horrible because it assumes this one-to-one relationship.

London is on Berlin time?

Posted Oct 3, 2021 18:45 UTC (Sun) by marcH (subscriber, #57642) [Link]

> That breaks on Jerusalem just as much as calling it "Jerusalem" would.

Wait... if they can agree on neither the time nor _the name of the city_ then there is no problem: just use those different names and problem solved! No?

London is on Berlin time?

Posted Oct 1, 2021 15:01 UTC (Fri) by mcopple (subscriber, #2920) [Link] (1 responses)

"If you name the "region, state, province, etc." then you have to contend with countries that don't do that, or countries that do that differently. Localization becomes very complicated."

And that doesn't even count political sub-units that also have multiple timezones (e.g., Indiana, which has 18 or so counties in central time zone because they are part of the Chicago metro, and the rest in the eastern time zone -- I used to dread the daylight savings time change because we always had some complication).

London is on Berlin time?

Posted Oct 1, 2021 17:19 UTC (Fri) by Wol (subscriber, #4433) [Link]

Which is why NAMING THE TIME ZONE (after the appropriate political entity), and then referring to it with a country/state/city combo link is so simple.

Name the time zone after the political entity responsible, then create as many country/state/city combos as the locals want/need, that link to the relevant time zones that apply to that area.

Most of this angst is becasue the time zone is being given a country/city designation which screws everybody except the cityzens of that city.

Cheers,
Wol

A fork for the time-zone database?

Posted Sep 29, 2021 17:15 UTC (Wed) by jhoblitt (subscriber, #77733) [Link]

Problem: some users are happy, some are not
Solution: make everyone unhappy

My expectation as an end user is that new releases mostly add modern dst transitions. Potentially breaking date/time calculations of existing and long stable zones seems fundimentally wrong. Such a major change warrants a major version bump. IOW - zoneinfo2 However, my preference would be to see a more flexible system that doesn't rely on the symlinks that have caused the current crisis.

A fork for the time-zone database?

Posted Sep 29, 2021 19:04 UTC (Wed) by dcantrell (subscriber, #75800) [Link]

Kinda wish the title of this story had been "It's Time For Some Controversy" or "Is It Time For Controversy?" or something similar.

A fork for the time-zone database?

Posted Sep 30, 2021 0:14 UTC (Thu) by jkingweb (subscriber, #113039) [Link]

I don't understand the argument for urgent action. Obviously an update for Samoa was required, and complaints should be addressed with concrete action when appropriate, but I don't see why there had to be action taken _now_ rather than in two weeks, especially when said action was taken over multiple objections, when those objections included loss of backwards compatibility and/or accuracy.

The article didn't give me the impression that this has long been a bone of contention, nor that further discussion couldn't yield an acceptable alternative, assuming Eggert is willing to entertain alternatives, so the urgency confuses me.

I don't envy the task of keeping up with timezones, anyway. It seems like a thankless, Sisyphean enterprise to me.

A fork for the time-zone database?

Posted Sep 30, 2021 2:04 UTC (Thu) by itsmycpu (guest, #139639) [Link]

> This code:
>
> DateTimeZone zone = DateTimeZone.forID("Europe/Stockholm");
> System.out.println(zone);
>
> will print "Europe/Berlin" if this change is not reverted. I consider this to be catastrophic.

Perhaps it could be done somehow like this (just as a vague idea):

a) The software will remember and the code above will still print "Europe/Stockholm"
b) It seems that patch uses an all-inclusive reference from "Europe/Stockholm" to "Europe/Berlin". Instead, it will have references limited by date ranges (for example >= 1970). Perhaps any references without date range would be limited to >= 1970 by default.

So that "Europe/Stockholm" will not inherit pre-1970 data that does not apply and would be wrong. So that the numbers don't lie.

Correct time zone history for Oslo and Stockholm but not for Hamburg and Munich?

Posted Sep 30, 2021 6:45 UTC (Thu) by kunitz (subscriber, #3965) [Link]

From 1945-05-24 to 1945-11-18 Berlin and East Germany, Soviet Occupied Zone then, had a different time than West Germany. So if you argue that Stockholm and Oslo should have a correct time zone history, you need to explain why Hamburg and Munich doesn't.

Two TZDB versions one 1970-and-after and another 1870-and-after would make a lot of sense. The latter could then cover Hamburg and Munich as well.

A fork for the time-zone database?

Posted Sep 30, 2021 9:14 UTC (Thu) by aurel32 (subscriber, #7059) [Link] (3 responses)

In my opinion, the biggest issue with merging zones whose timestamps agree since 1970 is no the lost of the history, but the fact that the backward links that are provided instead do not provide all the information. Before this process started, it was possible to get the list of zones per inhabited ISO-3166 country. This is not possible anymore.

Upstream and a few supporters on the mailing list have a very US-centric view there, the fact that there is not one timezone per US state is used as an argument to say that there is no need for one timezone per ISO-3166 country.

A fork for the time-zone database?

Posted Sep 30, 2021 9:31 UTC (Thu) by aurel32 (subscriber, #7059) [Link]

A fork for the time-zone database?

Posted Sep 30, 2021 12:34 UTC (Thu) by jkingweb (subscriber, #113039) [Link]

This is not a uniquely American phenomenon, for what it's worth. Six of the thirteen provinces and territories of Canada have two time zones. Sakha in Russia also has three, and the state of Amazonas in Brazil has two. There are probably others I don't know off the top of my head.

Americans tend to be the focus of attention, but it happens in multiple federal countries.

A fork for the time-zone database?

Posted Sep 30, 2021 18:07 UTC (Thu) by NYKevin (subscriber, #129325) [Link]

The distance from Los Angeles to New York City is much greater* than the distance from Paris to Moscow. The land area of Texas is similar to the land area of France. The population of California is a bit smaller than the population of Spain. In geographic and demographic terms, US states are at least somewhat comparable to European countries.

* Google gives deceptively similar numbers for me, but then I realized that one is in miles and the other is in kilometers.

A fork for the time-zone database?

Posted Sep 30, 2021 22:31 UTC (Thu) by Comet (subscriber, #11646) [Link]

typo nit: the link for RFC 6557 is titled "RFC 6657 charter", an RFC 100 later than the correct one (second digit mismatch).

A fork for the time-zone database?

Posted Oct 3, 2021 19:02 UTC (Sun) by marcH (subscriber, #57642) [Link]

> all the regions can be merged into other tzdb regions (Norway into Berlin, Guangdong into Shanghai, etc.) if we consistently limit tzdb's scope to regions that differ after 1970. Given all that, why should Norway and Sweden continue to be special?

Reality check: the computer industry has been historically rooted in the Western world and there are more people in Europe likely to notice this sort of semi-obscure regressions than in Angola or Niger.

> Unfortunately, the equity issue has broadened and is now visible outside our little community, and I really and sincerely doubt whether it'd be a good idea for us to do nothing about it now. We need to establish that we are fixing the problem and are not deferring action to a never-never land of arcane bureaucracy, and we need to do so in terms that will be clear to outsiders.

Reverting some of the earlier changes and separating say Angola and Niger would have been a great demonstration to (hidden and mysterious?) "outsiders".

> There are ways to derive the two different views into the data, Colebourne said, but that requires keeping the existing data in the main database file. That file can be processed to automatically do the merges as Eggert wants, but that the reverse is not true, Colebourne said

You'd think this should be obvious to a computer science professor.

“Historical data is mostly only used by astrology programs”

Posted Apr 29, 2022 23:23 UTC (Fri) by moxfyre (guest, #13847) [Link]

If you’re relying on the timezone database to carefully distinguish the timestamps of pre-1970 events in Norway vs. Sweden for astrological purposes then You're Doing It Wrong

… and your wrongness has nothing to do with timezones, databases, Norway, Sweden, or 1970. 😬


Copyright © 2021, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds