29 października 2006

Morze Polskie

W ten weekend zmienialiśmy czas z letniego na zimowy (czyli ten bardziej prawdziwy) i oczywiście wszystkie komputery i urządzenia świadome tego faktu przestawiły swoje zegary. Świadomy tego faktu jest oczywiście system Microsoft Windows, a steruje tym parametr "Daylight savings" na panelu "Date and time" (nie muszę chyba tłumaczyć po co przestawiamy czas na letni). Przy okazji zabawna historia wpadła mi w oko. Dotyczy to obsługi stref czasowych w Windows. Panel ze strefami czasowymi w Windows XP wygląda tak (zoom i komentarz oczywiście mój):


Zamiast Polski jest wielka zatoka, albo - jak woli Raymond Chen jedna z ciekawszych postaci na pokładzie Microsoftu - Wielkie Morze Polskie. "Dlaczego Microsoft zatopił Polskę?" pytają tu i ówdzie. Otóż jak tłumaczy się wszytkim Raymond na przestrzeni dziejów popełniono błąd związany z operowaniem obszarami na mapie stref czasowych. Wszystko zaczęło się od tego, że w pierwszych wersjach Windows 95 bieżąca strefa czasowa była podświetlona (miał to być taki bajer). Niestety funkcja ta bazowała na mapach zatwierdzonych przez ONZ, ale kwestionowanych przez niektóre rządy (konkretnie chodzilo wtedy w 1995 roku o konflikty między Ekwadorem i Peru oraz Indiami i Pakistanem). Microsoft zdecydował się usunąć funkcję podświetlania z Windows, mapka przestała się odwoływać do jakichkolwiek granic i był spokój. Niestety sposób w jaki to zrobiono był delikatnie mówiąc niestaranny, zaś program obsługujący tą nieszczęsną mapkę zakładał, że strefa czasowa, do której dane państwo należy, nigdy się nie zmienia. Niestety strefa czasowa naszego kraju zmieniała się w kolejnych edycjach Windows:

  1. Warszawa (w Windows 95 mieliśmy swoją własna strefę czasową)
  2. Lizbona, Warszawa (nawiasem mowiąc idiotyzm, bo Portugalia leży w innej strefie czasowej)
  3. Bratysława, Budapeszt, Lublana, Praga, Waszawa (tu już lepiej)
  4. Sarajewo, Skopje, Sofia, Warszawa, Zagrzeb (kolejny idiotyzm, bo przecież Bułgaria też jest w innej strefie)
  5. Sarajewo, Skopje, Warszawa, Zagrzeb (tak jest w Windows XP)

Raymond Chen pisze, że to z powodów politycznych, ale to nieprawda. Powody byly pewnie natury czysto technicznej lub porządkowej. Polska przecież od dawna nie zmienia ani stref czasowych, ani metod czasu letniego. Polityka nie ma tu nic do rzeczy. No i w efekcie błędnego założenia programistów oraz dziwnych zmian stref czasowych w kolejnych edycjach Windows mamy efekt, że Windows (nie wszystkie wersje) "zatapia" pod wodę obszary przypisane do stref czasowych, które nie są aktywne. A ponieważ nasza oryginalna strefa czasowa, ta pierwsza, warszawska już nie istnieje (w Windows), to program zalewa nasz kraj na mapie wodą.

W Windows Vista problemu nie będzie, bo tam panel sterujący jest zupełnie inny i przede wszystkim - nie ma żadnej mapy (na wszelki wypadek lepiej nie umieszczać żadnych map).

Jak morał z tej historii? Coś w rodzaju efektu motyla: konflikt graniczny między Ekwadorem i Peru z 1995 roku powoduje, że w 2006 roku w moim komputerze w miejscu Polski jest morze. :-)

Brak komentarzy: