PORUKE SKRIVENE U KODU

Programeri koji su doveli Amerikance na Mjesec odlično su se zabavljali

14.07.2016 u 07:13

Bionic
Reading

Kao da smo otvorili vremensku kapsulu i vratili se u '60-te: na GitHubu je objavljen je računalni kod pomoću kojeg su Amerikanci dospjeli na Mjesec

Kad su sredinom šezdesetih godina prošlog stoljeća programeri pri MIT-ovom Laboratoriju za razvoj mjernih instrumenata počeli razvijati letački softver za svemirski program Apollo 11, nisu imali ni osnovnu tehenologiju za to. Morali su ju izmisliti.

Domislili su se novog načina kako pohranjivati računalne programe (tzv. rope memory) i stvorili posebnu inačicu programskog jezika za asembliranje. Asembleri su sami po sebi zagonetni današnjim programerima. Vrlo ih je teško čitati jer su namijenjeni strojevima, ne ljudima. Za Apollo Guidance Computer (AGC), MIT-ovi programeri napisali su tisuće linija ovog ezoteričnog koda.


Taj je računalni kod već dulje vrijeme dostupan široj javnosti. Prvi ga je uploadao tehnološki istraživač Ron Burkey još 2003.godine, nakon što ga je ručno prepisao, liniju po liniju, sa skeniranih slika jedne od izvornih kopija koje je MIT stavio online, rekonstruirajući usput nečitljive dijelove korištenjem vlastitih inženjerskih znanja.

Skeniranje je obavio zrakoplovni pilot Gary Neff u američkoj saveznoj državi Koloradu. Kod je tako postao dostupan svima, a Burkey ga je upotrijebio kako bi napravio simulaciju AGC-a.

Apollo Guidance Computer emulation

Unatoč tome, široj javnosti ostao je nepoznat sve dok ga nedavno bivši NASA-in vježbenik Chris Garry nije cijelog postavio na GitHub. Za samo nekoliko sati programeri su počeli rastavljati kod na sastavne dijelove, naročitu pozornost obraćajući na komentare koje su izvorni programeri ostavljali pišući ga.

Riječ je o komentarima koji na svima razumljivom jeziku objašnjavaju što program treba napraviti u danom trenutku. No, mnogi idu dalje od dosadnog tehničkog objašnjavanja.

Jedna od datoteka izvornog koda je tako, primjerice, nazvana BURN_BABY_BURN--MASTER_IGNITION_ROUTINE, u počast DJ-u Magnificent Montagueu, koji bi puštanje novih ploča popratio uzvikom 'Burn, baby! Burn!', ali i kao referenca na nemire u Los Angelesu 1965. godine.

Nakon nekih 900 linija koda u toj datoteci može se vidjeti primjer zaigranosti programera: na početku komentara stoji pozdrav 'Hello there', a na kraju 'Goodbye. Come again soon.'

U datoteci nazvanoj LUNAR_LANDING_GUIDANCE_EQUATIONS.s pojavljuje se uputa astronautima da 'zavrte blesavu stvar uokolo'. U pitanju je dio programa koji se odnosi na pozicioniranje antene radara za spuštanje.

A u datoteci PINBALL_GAME_BUTTONS_AND_LIGHTS.s, opisanoj kao 'sistemski program za tipkovnicu i zaslon', nalazi se neobičan citat Williama Shakespearea:

'It will be proved to thy face that thou hast men about thee that usually talk of a noun and verb, and such abominable words as no Christian ear can endure to hear.'

Henrik VI.
, drugi čin, četvrta scena, ako vas je zanimalo.

Moguće je kako je to referenca na sam programski jezik za AGC, koji je koristio predodređene 'imenice' (nouns) i 'glagole' (verbs) za izvršavanje operacija.

Više:Quartz