První počítače spatřily světlo světa ve třicátých letech 20. století. Zatímco jejich stavbou se zabývali muži, programování těchto strojů bylo výhradně doménou žen. Průkopnickými příspěvky k počítačovému programování, vývoji softwaru a návrhu a implementaci programovacích jazyků přispěla i jedna ze tří prvních „programátorek“ na světě, Grace Hopperová..
Narodila se jako Grace Murrayová v roce 1906 v New Yorku. Její otec Walter vlastnil pojišťovnu. V 16 letech se ucházela o předčasné přijetí na Vassar College, ale byla odmítnuta kvůli nedostatečným výsledkům v latině.
Přijata byla až o rok později, následně zde získala bakalářský titul v matematice a fyzice. V roce 1930 pak obdržela magisterský titul z matematiky na Yale University. Ve stejném roce se provdala za profesora, působícího na Univerzitě v New Yorku, Vincenta Fostera Hoppera (1906–1976).
Rozvedli se v roce 1945. Grace se již nikdy znovu nevdala a ponechala si příjmení bývalého manžela.
Po bombardování Pearl Harboru a vstupu Spojených států do druhé světové války se rozhodla připojit k válečnému úsilí. Byla však příliš stará na to, aby narukovala, neboť jí v té době bylo už 34 let, a navíc měla příliš nízkou hmotnost vzhledem k výšce, o téměř 7 kg nesplňovala limit námořnictva, který činil 54 kg.
Nakonec ale obdržela výjimku a mohla se připojit k Americké (ženské) námořní rezervě a byla přidělena do Bureau of Ships Computation Project (Kancelář lodních výpočetních projektů) na Harvardu, kde se připojila k týmu, jenž pracoval na kalkulátoru IBM Automatic Sequence Calculator, který je lépe známý jako MARK I, první elektromechanický počítat ve Spojených státech.
Odstraňování hmyzu neboli chyb
Po skončení války pokračovala ve své práci s počítači. Od roku 1946 do roku 1949 pracovala s počítači MARK II a MARK III. Traduje se, že jednoho dne v roce 1947 se po otevření počítačové skříně ukázalo, že na elektromechanickém relé počítače MARK II přistála můra, jejíž asi deseticentimetrové relé zkratovalo a počítač zkolaboval.
Od té doby Grace vždy nakazovala svému týmu, aby stroj „debuggoval“, tedy odstranil z něj hmyz, jenž se anglicky řekne bug. A v počítačové hantýrce rázem přibylo slovo, které přežívá dodnes. Ten, kdo debugguje, však nehledá můry, ale chyby v systému.
V roce 1949 opustila Grace Harvard, kde již nebyly žádné stále pozice pro ženy, a nastoupila do společnosti Ecket-Mauchly Computer Corporation ve Philadelphii jako starší matematička. Tato společnost postavila první elektronický počítač (ENIAC) na základě vládních kontraktů.
Není bez zajímavosti, že výpočty na něm provádělo šest žen, které zpočátku ani neměly bezpečnostní prověrku, neboť se od nich očekávalo, že budou stroj programovat pouze pomocí papírových diagramů. K nim ovšem neobdržely žádné pokyny, a tak na to, jak stroj ovládat, musely přijít samy.
Zatímco vynálezcům ENIACu se dostalo ocenění a publicity, průkopnice počítačového programování se uznání nedočkaly.
Autorka prvního kompilátoru
Na počátku 50. let Eckert-Mauchly vyvíjel Universal Automatic Computer (UNIVAC I), první komerční elektronický počítač. Při práci na UNIVAC I a II Hopperová propagovala myšlenku automatického programování a prozkoumala nové způsoby, jak používat počítač ke kódování.
V roce 1952 vyvinula první kompilátor nazvaný A-0, který překládal matematický kód do strojově čitelného kódu – důležitý krok k vytvoření moderních programovacích jazyků. V roce 1953 pak přišla s myšlenkou na psaní počítačových programů s pomocí (anglických) slov než symbolů. Řada odborníků se nicméně domnívala, že to nemůže fungovat.
Grace přesto pokračovala v práci na překladači anglického jazyka a v roce 1956 její tým provozoval FLOW-MATIC, první programovací jazyk, který používal slovní příkazy. Díky tomu došlo ke zpřístupnění počítačů lidem bez inženýrského a matematického vzdělání, což bylo důležité pro počítačové společnosti, které začaly nabízet své produkty soukromému sektoru.
V roce 1959 se proto zúčastnila konference o jazycích datových systémů (CODASYL), jejímž cílem bylo programovací jazyk, který by bylo možné používat napříč průmysly a sektory. Hotovým produktem byl COBOL, zkratka pro „společný obchodně orientovaný jazyk“ (COmmon Business Oriented Language).
Ačkoli k tomuto úsilí přispělo mnoho lidí, Hopperová je široce uznávána za svou práci při navrhování COBOLu, vývoj kompilátorů pro něj a podpoře jeho širokého přijetí.