Ona stoji iza naših bagova i kompajlera: kontra-admiralka Grejs Hoper

“Niko nije verovao da sam imala funkcionalan kompajler i niko nije smeo da ga pipne. Govorili su mi da kompjuteri mogu da obavljaju samo aritmetiku”.

Marija Gavrilov - 4. Avgust, 2015.

Ona spolja odaje duh mornarice, ali je u suštini piratkinja koja želi da bude oslobođena. Tako je Džej Eliot u duhu Apple-a opisao osobu zaduženu za prvi kompajler, popularizaciju debagovanja i razvijanje COBOL-a, prvog višeg programskog jezika. U seriji tekstova o znamenitim ženama koje su stvarale kompjuterske nauke, ove nedelje pišemo o kontra-admiralki Grejs M. Hoper (1906 – 1992).

Od rasklapanja satova do službe u II svetskom ratu

Grejs je bila radoznalo dete. Ne bi li saznala kako sat funkcioniše, rasklopila je budilnike koje je pronalazila u kući, a pre nego što je njena majka uvidela šta radi, Grejs je imala već sedam rasklopljenih. Tokom odrastanja, roditelji su ohrabrivali njenu naklonost ka nauci. Kada je došao red da upiše studije, upisala je matematiku i fiziku na Vasar koledžu, a potom i doktorske studije matematike na Jejlu.

Nakon završenog doktorata, Grejs se vratila da predaje na Vasar koledžu. U jeku Drugog svetskog rata, uzima odsustvo sa koledža, ne bi li se prijavila da služi u mornarici. Sa 49kg, gotovo 7kg manje od potrebnog minimuma, primljena je da služi kao poručnica u timu zaduženom za kompjuterski program Mark I. U svojoj 38. godini, njen zahtev da se pridruži regularnoj mornarici bio je odbijen, jer je bila već u kasnim tridesetim. Nakon rata i nekoliko objavljenih radova, Grejs počinje rad na Harvardu.

Valja zapaziti da je za vreme u kome je Grejs živela ovo bilo gotovo nezamislivo. Čak i da se odluče za studije matematike, vrhunac u karijeri žena bilo je na poziciji predavača u školama. Njenu neustrašivost i nekonvencionalan život, najbolje ilustruje njena poznata izjava (upotrebljiva za sve preduzetnike i preduzetnice među vama):

Ako imate dobru ideju, samo napred i ostvarite je. Lakše je izviniti se, nego tražiti dozvolu.

Buba zaglavljena u Mark II

Nakon rata, 1947. godine, Grejs je radila na kompjuteru Mark II u laboratoriji pri mornarici. U jednom trenutku došlo je do smetnji u radu, da bi njeni saradnici otkrili moljca zaglavljenog u releju. Opisujući ovo stanje, Grejs je rekla da je ekipa debagovala sistem. U zapisima tima koji se čuvaju u Smithsonian muzeju u Vašingtonu piše: “Prvi slučaj pronalaska bube (buga)”. Iako se ovaj termin i pre incidenta koristio za označavanje malih poteškoća u inženjerskim poslovima, ona je bila zadužena za popularizaciju i proširivanje upotrebe termina u kompjuterskim naukama.

Prvi user-friendly softver za poslovanje

Grejs Hoper je 1949. počela da radi sa Eckert–Mauchly Computer Corporation, kompanijom koja je proizvela prvi kompjuter za komercijalnu upotrebu, UNIVAC I. U periodu kada je kompanija prelazila u vlasništvo Ramington Rand, firme danas poznate kao Unisys, Grejs je razvila prvi kompajler. Koliko je ovo bilo revolucionarno, pokazuje i njena izjava:

Niko nije verovao da sam imala funkcionalan kompajler i niko nije smeo da ga pipne. Govorili su mi da kompjuteri mogu da obavljaju samo aritmetiku.

Posle dve godine, Hoper je bila na čelu departmana za automatsko programiranje, a pod njenim vođstvom razvili su neke od prvih kompajlerskih jezika, među njima MATH-MATIC i FLOW-MATIC.

Ova dva jezika su, pre svega, bila usmerena ka nauci, pri čemu se poslovna zajednica osetila zapostavljenom. U cilju automatizovanja i ove sfere, počeo je da se razvija COBOL, iliti, Common Business-Oriented Language.  Kombinacija FLOW-MATIC-a i IBM-ovog COMTRAN-a izrodila je jezik koji je za korak bio bliži Grejsinoj zamisli: programski jezici bi trebalo da budu slični onom kojim se obično sporazumevamo.

Najveće postignuće pored kompjutera, obučavanje mladih

Grejs je ostala aktivna u mornarici do kasnih godina svog života. U sedamdeset i devetoj godini unapređena je u čin kontra-admirala. Ministarstvo odbrane SAD dodelilo joj je najviše ne-borbeno odlikovanje.

U kompjuterskim naukama Grejs je nastavila da razvija i implementira standarde za testiranje kompjutera i pojedinih delova, pre svega za rane jezike — FORTRAN i COBOL. Ovi testovi u 80-ih i bili usvojeni kao standard od strane institucije koja se danas zove Nacionalni institut za standarde i tehnologiju.

Do kraja života bila je aktivna u konsaltingu i obrazovanju. Koliko je uživala da drži predavanja i otvara mladima pogled u svet kompjutera, najbolje ilustruje njena izjava:

Najbitnija stvar koju sam postigla, pored razvijanja kompajlera, jeste obučavanje mladih. Oni mi se obrate i kažu: “Da li mislite da bismo ovo mogli napraviti?”. Ja im odgovorim: “Probajte!” I podržim ih. To im je potrebno. Ostajem povezana sa njima kako odrastaju, a s vremena na vreme ih protresem, da ne bi zaboravili da treba rizikovati.

Pogledajte još i:

Ko je bila prva programerka, Ejda Lavlejs?

Apolo misiju vodila je ista osoba koja je skovala termin “software engineering”: Margaret Hamilton

Upoznajte Ernu Huver, pionirku moderne komunikacije i vlasnicu jednog od prvih patenata za softver