What's the difference between GMT+01:00 Amsterdam and GMT+01:00 Brussels?
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...
Solution 1:
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.
Solution 2:
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.
Solution 3:
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".