Il Bug di 55 Anni nel Codice del Lunar Lander
Una Storia di Fisica Spaziale e Errori Nascosti
Ecco una storia che vi farà ridere e vi farà pensare: un bug di 55 anni nel codice del gioco Lunar Lander è stato finalmente scoperto da un ingegnere in pensione di nome Martin C. Martin. Questo errore, nascosto per decenni, ha messo in discussione la precisione del gioco che simulava la discesa sulla superficie lunare.
Il Gioco Lunar Lander: Un Pioniere della Storia dei Giochi
Il Lunar Lander, creato da Jim Storer quando era ancora studente delle superiori, rappresentava un’impresa ambiziosa per l’epoca.
Il gioco, scritto inizialmente in FOCAL e successivamente convertito in BASIC, utilizzava complesse formule di fisica e calcoli numerici per simulare la discesa del modulo lunare sulla superficie del satellite.
La sua popolarità e influenza sull’industria dei giochi hanno reso questo bug ancora più sorprendente, poiché è rimasto nascosto per quasi cinquantacinque anni.
La Scoperta del Bug
Martin C. Martin, durante la sua indagine sul gioco, ha notato che il lander non registrava sempre un atterraggio morbido, anche quando le condizioni fisiche lo permettevano.
Questa discrepanza lo ha portato a esaminare più a fondo il codice del gioco, scoprendo infine l’errore critico: un fattore di 2 mancante nel denominatore di una formula chiave per calcolare la traiettoria del lander durante gli ultimi 10 secondi di discesa.
Questo errore ha causato un’approssimazione 30 volte maggiore del dovuto, portando il gioco a registrare atterraggi duri o mancati anche quando non era il caso.
Conclusioni
La scoperta del bug nel codice del Lunar Lander è un evento significativo che ci ricorda l’importanza della precisione e della cura nel lavoro dei programmatori.
Questa storia ci insegna che, anche dopo decenni, è sempre possibile scoprire nuove cose e imparare dalla storia dei giochi.