Y2K 2.0?

2000.02.24. 18:50
A 2000. évi szökőnap legfontosabb tulajdonsága, hogy néhány programozó azt hitte, az idén elmarad. Ez az év a kerek százas évek közismert szokásától eltérve mégis szökőév lesz. Ilyen 400 évenként egyszer fordul elő, oka egy régen megszabott kétszeres kivétel. A Gergely naptár összeállításakor határozták meg a szökőnapok hosszú távú ütemezését, hogy évszázadok alatt is minimális legyen csak az elcsúszás. 1582-ben a tudósok mindent jól kifundáltak, hogy a lehető legpontosabban a valódi évhez centizzék a naptárat. Viszont nem gondoltak arra, hogy 2000-ben számítógépes programok fognak futni, amelyek a programozó hibájából nem veszik figyelembe a kivételes szökőnapot.

Az amerikai elnök Y2K átállást levezénylő főtanácsnoka John Koskinen tavaly év végén még azt nyilatkozta: a szökőnap idején is ugyanolyan készültséget fognak tartani, mint szilveszter éjjel. Persze azóta tudjuk, hogy az Y2K probléma még a legkevésbé felkészült országokban sem okozott egetrengető fennakadásokat. Sőt a "kidobott" dollármilliók miatt a felelősöket keresik, és perre mennek a cégek. Az Y2K bug kis testvére, a szökőnap most még ennyire sem borzolja a kedélyeket. Talán mert farkast kiáltottak az évszámváltáskor, most senki nem riogat ezzel. Pedig ismét van esélye informatikai zavaroknak. A magyar Y2K honlapon csak a "kritikus napok" táblázata figyelmeztet a február végi naptári anomáliára. Az USA pedig egyenesen meg is szüntette a korábban www.y2k.gov címen elérhető honlapot. A híroldalak Y2K összeállításai a legtöbb helyen még fent vannak, hiszen elég sok munkát beleöltek, de január első hete óta sehol nem találtunk friss cikket. A szökőnap ezek szerint már nem téma.

Napok és évek
A Krisztus előtt 46-ban Julius Caesar által bevezetett naptár minden negyedik évben szökőnapot rendelt el. Ez évente átlagosan néhány perces eltérést okozott, ami 128 évente adott ki egy teljes nap csúszást a csillagászati évhez képest. Addig nem foglalkoztak a problémával, míg az eltérés közel 10 napra nem nőtt. 1582-ben XIII. Gergely pápa úgy rendelkezett, hogy október 4.-e után október 15. következzen. A további csúszás elkerülésére pedig meghatározták a kihagyandó szökőnapokat. A Gergely-naptár négyévente tiszteli meg a februárt szökőnappal. A hónap 29 napos lesz, a szökőnap azonban nem 29-e, hanem valójában február 24. A 00-ra végződő években elmarad a szökőnap, kivéve a 400-zal osztható évszámokat, amikor mégis van. Így, a 400 év alatt beiktatott 97 szökőnappal együtt egy naptári évre átlagosan 365.2425 nap jut. Ez a negyedik tizedes jegyig megegyezik a csillagászati év időtartamával (365.2422 nap), de a rendszer 10 ezer év alatt így is kitermel 3 nap eltérést.

Pedig a fel nem készült alkalmazásokban táblázatok borulhatnak fel. A dátumot félreértelmező alkalmazásokban fortélyos hibák keletkezhetnek. Az extra nap számukra kimarad, február 28. után azonnal március 1. következik. A legtöbb program gyártója az Y2K frissítéshez hozzácsapta a szökőnap-javítást is. Nem véletlenül, hiszen a népszerű szoftverek alapváltozatukban az évszámon kívül a szökőnap témában is produkálnak zöldségeket.

Például a Windows 95 és 98-ban, ha kézzel beállítjuk a dátumot február 29-re, és az évet is átállítjuk, akkor minden évet elfogad szökőévnek. A Microsoft szerint ez csak a beállítási panel hibája, a rendszerdátum magától nem állhat rossz évben február 29-re. Ezt a hibát az Y2K frissítés a dátum/idő panel cseréjével kijavítja.

Az Y2K miatt javíthatatlannak minősült, és egy az egyben ki kellett dobni az Excel 4-et és a Word 2-t. A dátumtévesztésen kívül ezek a programok a szökőnapokat sem tudták rendesen kezelni. A későbbi verzió (Excel 97) tudja ugyan 2000-ről, hogy szökőév, de (tévesen) ezt gondolja 1900-ról is. Ez a probléma állítólag a dátumformátumhoz mintaként alkalmazott konkurrens szoftver, a Lotus 1-2-3 hibája, és csak a békesség kedvéért nem javították ki a Microsoft mérnökei.