|
afleveringen OUDE VREES PROBLEEM EN OORZAAK CRUCIALE DATA SCHRIKKELJAAR ECONOMIE (SEMI-)OVERHEID BANKEN LUCHTVAART INTERVIEWS HANDLEIDING VOOR PC'S LABEL AANSPRAKELIJKHEID VERZEKERINGEN LINKS |
Het probleem
Veel computerprogramma's en -toepassingen gebruiken
datums om gegevens te kunnen opslaan of te vergelijken. Bijvoorbeeld
iemands geboortedatum, of het uiterste houdbaarheidstijdstip van een
product.
In veel programma's worden jaartallen niet volledig ingevuld (bijvoorbeeld 1998, of 2001), maar worden alleen de laatste twee cijfers gebruikt (98, of 01). Wie in zo'n geval gaat rekenen met de datum komt in problemen. Bijvoorbeeld met leeftijden. Want hoe oud is iemand die in 1960 is geboren in 2003? Een oud programma rekent uit: 03 min 60 is: min 57 jaar. Maar iemand kan geen negatieve leeftijd hebben, dus het programma geeft een foutmelding of geeft de absolute waarde, dus 57 jaar. Ook telefoneren kan problemen geven. Iemand die telefoneert van 23.58 uur op 31 december 1999 tot 0.02 uur op 1 januari 2000, heeft vier minuten gebeld. Maar welke berekening maakt de computer van de telefoonmaatschappij? Die kan uitkomen op een gesprek dat bijna een eeuw heeft geduurd en opdracht geven tot het versturen van een astronomische rekening. In dit voorbeeld is vooral het moment van de jaarwisseling cruciaal, omdat alleen gegevens van tijdstippen worden vergeleken die kort na elkaar liggen. Ook het Global Positioning System (GPS) kan moeilijkheden geven. Dit is een wereldwijd systeem van 24 satellieten dat positiesignalen uitzendt. GPS heeft een dubbelteller-probleem: de teller voor weken springt op 20 augustus '99 weer op nul, de jaarteller doet dat bij de millenniumwisseling. Allerlei apparaten, van rakketten tot vrachtwagens, kunnen de uitgezonden positiegegevens verkeerd interpreteren.
De oorzaak
De eerste grootschalige toepassing van
computerprogramma's dateert van twintig of dertig jaar geleden, toen
overheden en grote bedrijven zogeheten mainframes kochten voor hun
administratie. Geheugenruimte - bijvoorbeeld een hoeveelheid bytes op
een magneetband of een chip - was toen zeer kostbaar.
Wie in 1977 evenveel geheugen wilde kopen als een pc van tweeduizend gulden nu bezit, was vele miljoenen guldens kwijt. De ontwerpers van programma's moesten daarom elke gebruikte byte verantwoorden. Een jaartal twee in plaats van vier cijfers geven, leverde een aanzienlijke besparing op. Toen dacht men nog dat programma's slechts een paar jaar zouden meegaan. Maar de programma's werden nooit vervangen. Want de gebruikers waren tevreden, en vervanging zou miljoenen guldens gekost hebben. In veel gevallen zijn bedrijven nu zelfs minder geld kwijt om de oude programma's gereed te maken voor het millennium, dan wanneer ze een nieuw systeem hadden gekocht. |
NRC
Webpagina's
|