計算機編程第一夫人:耶魯大學首位數學博士
格雷絲·霍珀(Grace Hopper),她是計算機編程的第一夫人。美國海軍當時將最新和最先進的導彈驅逐艦,命名為“格雷絲·霍珀”號。人們也將“計算機程序之母”、“美國海軍計算機化之母”等名頭,給予了這個已在1992年離世的女子。
在50多年前,當霍珀決定轉身時,瓦薩學院的這名數學教授,并不清楚自己會走上怎樣一條路。
1941年12月7日,投在珍珠港的炸彈,在美國掀起巨大的波瀾,也成了霍珀人生的轉折點。這個36歲的女人,決定放棄自己的婚姻和終身教授職位,加入海軍。
作為耶魯大學歷史上第一位獲得數學博士學位的女性,霍珀在海軍后備學校備受重視,如魚得水地“享受著完美天堂般的時光”。
然而,在1944年畢業時,中尉霍珀原本以為自己會被派往海軍附件中心工作,承擔破解敵軍密碼的任務。調令到來后,她發現自己被派到哈佛大學,與一臺大型計算機器打交道。
這臺高8英尺、寬3英尺、長51英尺、重9445英磅、擁有530英里線路的機器,被官方稱為“自動程序控制計算機”。發明它的海軍中校艾肯,則稱之“馬克一代”。
看到海軍派來一位女人做副手,艾肯非常失望。他對霍珀的接待,自然也“冷若冰霜”。實驗室里的年輕男同事,也不愿坐在女人身旁,他們甚至為了不與霍珀為鄰而收買對方。
盡管不大情愿,霍珀還是站到了“馬克一代”前面,成為第一臺現代計算機的第三個程序員。她的工作,也很快令艾肯和同事們刮目相看。
“我學會了海洋學、所有的掃雷過程、引爆裝置、低空爆炸信管、生物醫學方面的詞匯。”霍珀后來回憶道。
1944年秋天,霍珀和同事在戰事壓力下,發明了編碼系統。在1960年代新技術發明實施以前,這一編碼系統“一直統治著計算機領域”。
艾肯也越來越信任自己的副手,他要求霍珀負責為“馬克一代”撰寫操作指南。1946年春天,霍珀完成了任務。但她發現,自己并不在作者之列,因為榮譽是按級別分配,暫時還沒有中尉的份兒。3年后,霍珀又為“馬克二代”編寫了操作指南,哈佛大學出版社在出版時,依然沒將霍珀列入作者名單。
霍珀并沒有抱怨。這一年,計算機行業開始使用術語“程序員”?;翮晖ㄟ^身體力行,解釋什么是程序員,程序員該做什么和怎么做。她的事業似乎也風生水起。她曾是第一批成為海軍軍官的女性,此時她又是第一家新興商業計算機公司的資深主管。
但在這年11月,霍珀在凌晨3點被捕,罪名是酗酒和妨害社會治安。這個43歲的女人雖然成就斐然,卻敗給了自己無序的生活,并深深陷入了對酒精的依賴。被監禁在醫院接受治療期間,霍珀甚至思考著如何自殺。她嘗試著將自己淹死在河里,但未能成功。
最終在同事和朋友的幫助下,霍珀走出了陰影。1951年10月,她開始利用業余時間從事程序的發明工作,第二年她便編寫了第一個編譯器,并意識到自動化編程的重要性。在美國計算機協會,霍珀也成為領袖人物,開始擔任協會編程委員會和術語委員會會長。
幾年前,在為“馬克二代”排除故障的過程中,霍珀和同事找到了一個被夾死的飛蛾。她將飛蛾用膠帶粘在工作筆記里,并稱程序故障為“bug”。這一術語,后來成為計算機專業的專業術語流傳至今。
擔任會長后,規范術語,形成行業的通用語言,成為霍珀的工作之一。她用“存儲”代替“記憶”,用“處理”代替“思考”。這些都成為我們今天耳熟能詳的術語。
對霍珀來說,她要做的還不只這些。“我們都希望有一門專門進行數據處理的語言。”她說。為此,1959年5月,美國與計算機相關的重量級人物坐進了同一個房間。
經過一次次投票后,霍珀和她的“構想小組”所發明的程序語言COBOL,經過修改后,被批準成為標準的通用商業編程語言。
有人評價,霍珀他們的發明打破了人與機器交流的障礙,使得計算機編程領域“民主化”,推動了1960年代技術的大眾化轉型。美國數據管理協會提名她為第一個計算機科學“年度人物”。
在被列入海軍后備隊退休人員名單后,60歲的霍珀原本以為自己可以開始安享晚年。但她剛離開,海軍在執行編程語言時便遇到困難。她不得不再服6個月的現役。后來這個時間延長到20年。1986年,霍珀作為美國海軍年紀最大的現役軍官退役。在海軍界,她赫赫有名。
但在很多地方,人們對她的成就一無所知。直到1983年3月,霍珀在哥倫比亞廣播公司的《60分鐘》節目里亮相。一位議員看到節目后,立即發起一項提案,呼吁這位杰出女性的貢獻應該得到應有的認可。
隨后,霍珀上校被任命為海軍準將,后來又成為海軍少將。這個沉寂了大半生的女人,很快便作為計算機先驅和英雄為公眾所知。
格蕾絲工作證明:計算機不僅是數學儀器,當進行數值運算時,它控制運算符號;當進行數據處理時,它控制數據處理符號。她在簡化計算機編程方面的工作是計算機普及的重要原因之一。她給人類到來的貢獻是不可估量的,讓我們記住這位計算機編程的第一夫人吧!
【編輯推薦】