117

I live in Vienna. My newly reset Android device just asked me about my time zone and I have multiple options available:

Amsterdam GMT+01:00
Belgrade GMT+01:00
Brussels GMT+01:00
Sarajevo GMT+01:00

Apparently, Windows also offers different GMT+01:00 time zones, so that's not something specific to Android:

Central Europe Standard Time (GMT+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague
Central European Standard Time (GMT+01:00) Sarajevo, Skopje, Warsaw, Zagreb
Romance Standard Time (GMT+01:00) Brussels, Copenhagen, Madrid, Paris
W. Europe Standard Time (GMT+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna

What's the difference? In particular, what's the difference between "Romance Standard Time" and "W. Europe Standard Time"? According to Wikipedia, they should be the same. And as far as I can remember, Paris and Berlin have always been in the same time zone...

ale
  • 3,369
  • 6
  • 40
  • 52
Heinzi
  • 3,697
  • 9
  • 35
  • 50
  • I'm not sure if it answers the question, but did you check the [wiki article on CET](https://en.wikipedia.org/wiki/Central_European_Time)? It does mention a discrepancy between the official definition and the geographical one. – Seth Mar 13 '17 at 09:35
  • 26
    IIRC they may have slightly different DST laws. – Daniel B Mar 13 '17 at 09:35
  • @DanielB: That's what I thought, too, but [according to Wikipedia](https://en.wikipedia.org/wiki/Summer_Time_in_Europe#France) both France and Germany *"[follow] EU rules regarding the start and end times and dates for summer time."* – Heinzi Mar 13 '17 at 09:44
  • 22
    _"And as far as I can remember, Paris and Berlin have always been in the same time zone..."_ Right but a programmer doesn't lock you into assumptions like this ("...therefore they always will be"), because there's no need to. – Lightness Races in Orbit Mar 13 '17 at 17:40
  • 20
    Timezones are [complicated](https://www.youtube.com/watch?v=-5wpm-gesOY). – Zoredache Mar 13 '17 at 19:36
  • 17
    Apparently, then, you're too young to remember 1976-79, when France observed DST but Germany did not. Or pre-1940, when France used GMT. – user46971 Mar 13 '17 at 22:24
  • 2
    If you were French/German, would you want to have to set your time to Berlin/Paris? Just as I'm always irritated when I do an OS install, and am forced to set my time zone to PST - Los Angeles. I don't want to be associated with that place in any way. – jamesqf Mar 14 '17 at 04:11
  • 7
    IMO from a developer perspective, this would also be a good, on-topic question for ux.stackexchange.com: similar to the nation/flag/language dilemma, this is somewhat mixing geographical and "political" concepts. remember, even the "G" in "GMT" is a place (Greenwich). Windows 98 and older had a nice map, where you could select the time zone using a selector that would highlight the approximate area of the planet it corresponds to on mouseover. – dlatikay Mar 14 '17 at 21:17
  • 5
    @dlatikay: Unfortunately the map fell foul of geopolitics: see Raymond Chen on [_Why isn't my time zone highlighted on the world map?_](https://blogs.msdn.microsoft.com/oldnewthing/20030822-00/?p=42823/) and [_The great Polish Sea_](https://blogs.msdn.microsoft.com/oldnewthing/20061027-00/?p=29213%2F). – deltab Mar 15 '17 at 05:03

4 Answers4

139

If you only look at the present, many time zones will appear redundant. However, if you look at the past, you will find a lot of differences. As an example, let’s look at the source code of the Europe/Busingen (actually a link to Europe/Zurich) and Europe/Berlin time zones. Büsingen is a German exclave entirely enclosed within Swiss territory.

Europe/Zurich:

# Rule  NAME    FROM    TO  TYPE    IN  ON  AT  SAVE    LETTER/S
Rule    Swiss   1941    1942    -   May Mon>=1  1:00    1:00    S
Rule    Swiss   1941    1942    -   Oct Mon>=1  2:00    0   -
# Zone  NAME        GMTOFF  RULES   FORMAT  [UNTIL]
Zone    Europe/Zurich   0:34:08 -   LMT 1853 Jul 16 # See above comment.
            0:29:46 -   BMT 1894 Jun    # Bern Mean Time
            1:00    Swiss   CE%sT   1981
            1:00    EU  CE%sT

Europe/Berlin:

# Rule  NAME    FROM    TO  TYPE    IN  ON  AT  SAVE    LETTER/S
Rule    Germany 1946    only    -   Apr 14  2:00s   1:00    S
Rule    Germany 1946    only    -   Oct  7  2:00s   0   -
Rule    Germany 1947    1949    -   Oct Sun>=1  2:00s   0   -
# http://www.ptb.de/de/org/4/44/441/salt.htm says the following transition
# occurred at 3:00 MEZ, not the 2:00 MEZ given in Shanks & Pottenger.
# Go with the PTB.
Rule    Germany 1947    only    -   Apr  6  3:00s   1:00    S
Rule    Germany 1947    only    -   May 11  2:00s   2:00    M
Rule    Germany 1947    only    -   Jun 29  3:00    1:00    S
Rule    Germany 1948    only    -   Apr 18  2:00s   1:00    S
Rule    Germany 1949    only    -   Apr 10  2:00s   1:00    S

Rule SovietZone 1945    only    -   May 24  2:00    2:00    M # Midsummer
Rule SovietZone 1945    only    -   Sep 24  3:00    1:00    S
Rule SovietZone 1945    only    -   Nov 18  2:00s   0   -

# Zone  NAME        GMTOFF  RULES   FORMAT  [UNTIL]
Zone    Europe/Berlin   0:53:28 -   LMT 1893 Apr
            1:00    C-Eur   CE%sT   1945 May 24  2:00
            1:00 SovietZone CE%sT   1946
            1:00    Germany CE%sT   1980
            1:00    EU  CE%sT

First and foremost, note how the last line is identical: Both use Central European (Summer) Time today. Everything before that varies wildly. Germany adopted the CE(S)T in 1980, while Switzerland did that a year later in 1981.

Because of how both the Netherlands and Belgium were affected by the First and Second World War and whatnot, their history is even longer, so I won’t include them here. You can download the data and see for yourself. It’s a very interesting read because it contains extensive research into the history of timekeeping on many states.

Daniel B
  • 60,360
  • 9
  • 122
  • 163
  • 67
    Because the differences where in the past it may appear to be academic. Until you need to compare time-stamps in historic log-files dating from before 1980 and generated on systems running in different time-zones. Then you are very glad that timezone aware standard function libraries exist that can convert dates/times with these differences properly calculated. – Tonny Mar 13 '17 at 16:26
  • 37
    famous example: [Why is subtracting these two times (in 1927) giving a strange result?](http://stackoverflow.com/q/6841333/995714). – phuclv Mar 14 '17 at 04:58
  • 12
    Büsingen is the nightmare of programmers. It is the measuring stick by which certain libraries are judged: it has two post codes, it is subject to German income taxes but not their VAT and so on. – chx Mar 15 '17 at 22:40
  • 1
    And you might say all that was a long time ago, surely no computer system cared about time zones in 1981, but for example Portugal changed time zones in 1992 and then in 1996. – biziclop Mar 16 '17 at 14:41
78

Short answer: you're not selecting "Amsterdam GMT+01:00"; you're selecting "Amsterdam (which at the moment is GMT+01:00)".

The display of the absolute time offset is just a useful indicator of what your selection practically means today, but it doesn't define the selection you're making.

If you choose "Amsterdam" and Amsterdam's timezone later changes separately to Brussels's, your computer will track Amsterdam specifically.

Lightness Races in Orbit
  • 3,066
  • 1
  • 20
  • 29
  • 9
    Sounds reasonable. In that case, however, it would make more sense to show a list of all major city names (as Windows does) instead of just a select few (as Android does): As a Vienna resident, how am I supposed to know that I should select "Amsterdam" instead of "Brussels" (which is the sort-of capital of the EU, which defines the current DST rules for the region) or "Belgrade" (which is geographically closest) or "Sarajevo" (which was part of our empire once, before bad things started to happen ~100 years ago). – Heinzi Mar 14 '17 at 09:28
  • 3
    @Heinzi because it is unlikely that 2 cities within a country with 1 time zone will have different time zones. Normally, the whole country would change. Typically, pick the capital of the country. – Tim Mar 14 '17 at 10:49
  • 7
    @Tim: True, but there are more than 4 countries (and, thus, more than 4 capital cities) in GMT+01:00. – Heinzi Mar 14 '17 at 10:51
  • @Heinzi: I would tend to agree that showing more cities would be good. – Lightness Races in Orbit Mar 14 '17 at 12:14
  • I think that the first two paragraphs here most accurately and concisely answer this question. The historical analysis by Daniel B is interesting, but not relevant to current devices. I think the last paragraph is unrealistic though and would require listing so many cities to account for all possible future changes. Future time zone changes are rare and hard to predict events that would require OS updates and be matched with public information campaigns anyway. The UX question of how much granularity to give is an interesting question though, but probably isn't driven by potential TZ changes. – zelanix Mar 17 '17 at 12:32
  • @zelanix: Tell that to Turkey. – Lightness Races in Orbit Mar 17 '17 at 13:05
12

Deciding what zones to have in a timezone database is a compromise between:

  • keeping the number of zones and overall DB size reasonable
  • providing accurate conversions for historical timestamps
  • minimising the need for reconfiguration in the face of future changes to the definition of civil time.

The "TZ database" (used by pretty much every OS vendor except Microsoft) defines a timezone as a "national region where local clocks have all agreed since 1970".

So generally (there have been some exceptions surrounding historical countries that split) places in different countries will get different timezone names even if they have had the same local time since 1970.

Each zone is generally identified by its region and main city (there are some exceptions). Pre-1970 data attempts to be accurate for the main city in the zone, but a zone will only be split if there is a post-1970 difference.

Some platforms may hide some minor zones by default, but that doesn't seem to be the case here. Your list is missing major zones like "Vienna" and "Berlin"

Based on your list, I wonder if it is a localisation thing. Maybe they assume people in German-speaking countries will be using the German build of the OS.

MS does their own thing on timezones. I do not know what their criteria are for deciding whether something is in the same zone or not, but I expect it is something along the lines of "places that have had different local time since Windows started supporting timezones".

Toby Speight
  • 4,866
  • 1
  • 26
  • 36
plugwash
  • 5,994
  • 2
  • 18
  • 25
  • I'm not sure there's such a thing as a "German build" (why would you re-build something just to change default language?), but it's certainly plausible that the *current user language* affects which zones it chooses to present. – Toby Speight Mar 16 '17 at 14:08
  • There are several reasons a phone vendor might want to do different firmware builds for different countries. One is to make the first time setup process easier for buyers. Another is to make grey importers lives harder. Another is to save storage space. Another is to vary the bundled crapware. – plugwash Mar 16 '17 at 14:25
  • Afaict andriod lets the phone vendor choose what localisation options to include when building their firmware. – plugwash Mar 16 '17 at 14:26
  • Ah, you're talking of building the *distribution* from packages; I thought you meant recompiling the *programs* just to change language. That makes more sense now. – Toby Speight Mar 16 '17 at 14:47
4

Something else to keep in mind is daylight savings.

One city might have daylight saving enabled while another city on the same longitude (and thus the same timezone) but closer to the equator will not have daylight savings enabled.

KizilKar
  • 41
  • 4
  • Nice of you to suggest that there might be a scientific reason why two cities in the same timezone might choose differently whether to have daylight savings time or not. I suspect that more typically it is simply a matter of local politics and not any science at all. – davidbak Mar 15 '17 at 14:28
  • You are correct that it is more Human driven than scientific but it is actually less a case of politics (although it is politicians who enact this) and more a case of economics. Here is a link to a Wikipedia article about it for those interested. [Daylight_saving_time](https://en.wikipedia.org/wiki/Daylight_saving_time) – KizilKar Mar 16 '17 at 07:11
  • 2
    well that's a good article but it also shows what I meant by "politics" - you'll notice that in the extensive "Dispute over benefits and drawbacks" section there aren't any *conclusive* results - for each claim or study in favor of DST there's one against it. Proponents and detractors just argue their side but nobody can point to anything definitive. So that's the definition of "politics", really - people using argumentation (rhetoric) rather than science to achieve their goals ... – davidbak Mar 16 '17 at 09:13
  • 1
    Its also worth noting that countries might for political reasons change this policy at some point. Having one timezone per country is a good practice. – joojaa Mar 17 '17 at 21:11