Objavljen programski kod koji je Amerikance odveo na Mesec

Kada je programerima Laboratorije Tehnološkog instituta u Masačusetsu sredinom šezdesetih godina dodeljen zadatak da izrade softver za svemirski program Apolo 11, tehnologija za tako nešto nije postojala. Stručnjaci su morali da je izmisle.

Izvor: Quartz
Podeli
Foto: Gettyimages
Foto: Gettyimages

Oni su osmislili novi način skladištenja kompjuterskih programa, nazvan “rope memory”, i stvorili posebnu verziju asemblerskog jezika. Asemblerske jezike, koji su bili više prilagođeni kompjuterima nego ljudima, mnogi programeri danas smatraju izuzetno teškim za čitanje, piše Quartz.

Za potrebe nastanka računara za upravljanje Apolom (AGC, Apollo Guidance Computer), programeri sa MIT-a su napisali na hiljade linija ezoteričnog koda. Kog je obima bio ovaj kod najbolje se može shvatiti ako se pogleda čuvena fotografija na kojoj Margaret Hamilton, direktorka tima za softversko inženjerstvo, pozira pored gomile papira na kojoj je odštampan pomenuti softver:

Foto: Wikimedia Commons / Public domain
Foto: Wikimedia Commons / Public domain

AGC kod dostupan je javnosti već neko vreme.

Prvi put ga je objavio israživač Ron Burki 2003. godine, nakon što je utrošio ogromno vreme i trud prekucavajući skeniranu verziju kompjuterskih podataka odštampanih na papirima koje je Tehnološki institut u Masačusetsu objavio na internetu.

To znači da je Burki ručno prekucao svaki red koda, jedan po jedan. Podatke odštampane na papirima skenirao je pilot Gari Nef iz Kolorada.

“Skenirane kopije su, nažalost, bile toliko oštećene, da je na pojedinim mestima bilo nemoguće dešifrovati šta piše. Delove koji nedostaju uspeo sam da rekonstruišem zahvaljujući svojim inženjerskim sposobnostima”, objasnio je Burki.

“Nešto kasnije uspeo sam od Garija da nabavim čitke kopije i ispostavilo se da su apsolutno sve ispravke koje sam uneo bile tačne!”, dodao je.

Zahvaljujući Burkijevom trudu, kod je danas dostupan svakom istraživaču i zaljubljeniku u programiranje koji bi želeo da sazna nešto više o ovom zastarelom dragulju.

Koliko god obiman i uspešan Burkijev projekat bio, kod je ostao donekle opskuran sve dok bivši član Nase Kris Gari nedavno nije objavio potpunu verziju softvera na GitHubu, hosting servisu besplatnog otvorenog koda koji predstavlja jedno od omiljenih mesta okupljanja miliona programera.

Kompjuterski zaljubljenici su u roku od nekoliko sati počeli da analiziraju kod, a neki od šaljivih komentara koje su 60-ih u okviru koda ostavili tadašnji programeri, ubrzo su se našli na društvenim mrežama.

Jedan od fajlova tako, na primer, nosi naziv BURN_BABY_BURN--MASTER_IGNITION_ROUTINE, a uvodni komentari objašnjavaju njegovo poreklo – reč je o istoimenoj pesmi koja je 1965. godine bila veliki hit u SAD:

Oko 900 linija dalje u istom potprogramu, čitalac ima priliku da na osnovu prvog i poslednjeg komentara u bloku koda zaključi da su članovi tadašnjeg programerskog tima bili vrlo šaljivi:

Čini se da je dve linije koda u okviru fajla LUNAR_LANDING_GUIDANCE_EQUATIONS.s trebalo da budu privremene, ali su na kraju postale stalne, uprkos velikoj nadi programera da se to neće dogoditi:

U istom fajlu na drugom mestu, nalaze se uputstvo namenjeno astronautu da ‘savije tu smešnu stvar ’:

“Taj kod osnosio se na pozicioniraje antene radara namenenjog za sletanje (LR, landing radar). Pretpostavljam da je kod upozorio astronaute na opasnost koje nosi njeno repozicioniranje”, objasnio je Burki.

U fajlu PINBALL_GAME_BUTTONS_AND_LIGHTS.s, koji je opisan kao ‘sistemski program za tastaturu i monitor... namenjen razmeni između programskog jezika AGC i kompjuterskog operatora‘, može se naći čak i Šekspirov citat:

Reč je najverovatnije o referenci u vezi sa samim AGC, na šta je ukazao jedan korisnik društvene mreže Reddit.

Jezik je koristio ‘imenice’ i ‘glagole’ sa preodređenim značenjem za izvršavanje različitih operacija. Glagol 37, na primer, znači ‘Pokreni program’, dok imenica 33 označava ‘Vreme za paljenje’.

Sad, kada je kod dostupan na GitHub-u, programeri širom sveta imaju priliku da komentarišu kod i daju predloge za potencijalne izmene. Mnogi od njih su to već učinili, a pristiglo je i mnoštvo šaljivih komentara.

strana 1 od 3 idi na stranu