結帳
購物車有 0 項商品,共 0
天下文化首頁 主題 膽識過人的女性程式設計先驅
科學自然

發表日期

2015.09.24
收藏文章 0

文章摘錄自

創新者們
艾薩克森在暢銷巨著《賈伯斯傳》之後,繼續以《創新者們》記錄輝煌的數位時代,但是《創新者們》不僅是數位...
定價 480
優惠價 85折,408
$480 85$408

膽識過人的女性程式設計先驅


霍普—膽識過人的程式設計先驅

二次大戰期間參與計算工作的女性和愛達一樣,很早就看出程式設計的重要。她們設法把指揮硬體作業的指令編成程式碼,這個軟體中蘊含的神奇程式,能以奇妙的方式改變機器的作業。

海軍女軍官霍普(Grace Hopper),她先是為哈佛大學的艾肯工作,然後又加入艾科特和莫渠利的團隊。她在1906年出生於曼哈頓上西城姓莫瑞的有錢人家。祖父是土木工程師,經常帶著孫女在紐約市四處勘查。母親是數學家,父親則擔任保險公司主管。她在大學時代主修數學和物理,從瓦薩學院畢業後,進入耶魯大學攻讀研究所,並且在1934年拿到數學博士的學位。

她嫁給比較文學教授文森.霍普(Vincent Hopper)之後,到瓦薩學院任教。和其他數學教授不同的是,她堅持學生必須具備良好的寫作能力。她上機率課時,會先講解自己最愛的數學公式,然後要求學生以此為題寫一篇文章。她批改時,也會就文章清晰度和寫作風格來評析。

「我(在文章上)寫滿評語,而他們會抱怨這是數學課,又不是英文課。」她回憶道:「然後我會解釋,除非他們懂得怎麼和別人溝通,否則學習數學毫無用處。」終其一生,霍普一直很擅長把科學問題(例如有關軌道、流體流動、爆炸、天氣型態的問題)轉換為數學方程式,然後再翻譯成一般人聽得懂的英文。這項才能也幫助她成為優秀的程式設計師。

到了1940 年,霍普開始覺得無聊。她沒有小孩,婚姻生活平淡無趣,教學工作也不如想像中那麼充實。於是她向學校請假,到紐約大學投入著名數學家庫朗(Richard Courant)門下,專心研究偏微分方程的解法。

美國參戰讓她有機會改變人生。霍普辭掉瓦薩學院的教職並和丈夫離婚,在36歲時加入海軍,在1944年6月以第一名的優異成績畢業,成為了霍普上尉。

霍普上尉原以為海軍會把她分發到密碼和編碼部門工作,結果令她訝異的是,上級命令她到哈佛大學報到,參與馬克一號的開發工作。

霍普在1944年7月報到時,艾肯給了她一份巴貝奇備忘錄的副本,然後帶她去看馬克一號並告訴她:「這是一部用來計算的機器。」霍普頓時目瞪口呆。「這部龐然大物在那兒發出一堆吵雜的聲音。」她回想時說:「整部機器就整個敞開,赤裸裸的放在那裡,而且吵得不得了。」

霍普的長處是很懂得把現實世界的問題轉化為數學方程式,然後用機器能夠了解的方式下達指令,和機器溝通。她解釋:「我們必須學習他們的用語,才有辦法解決他們的問題。我可以隨時轉換詞彙,先用高度技術性的術語跟程式設計師溝通,然後幾小時之後,再用完全不同的詞彙向主管報告相同的事情。」

要成功創新,有賴於清楚的溝通。

由於霍普清晰準確的溝通能力,艾肯指派她撰寫電腦程式設計手冊,這是全世界第一部程式設計手冊。結果霍普寫出一部厚達五百頁的巨著,裡面包含了馬克一號的發展史和程式設計指南。霍普每天晚上都把當天撰寫的內容唸給艾肯聽,她因此領悟到成為優秀寫手的簡單訣竅,她說:「他指出,如果你大聲朗讀時,會結結巴巴讀不順,那麼最好修改句子。我每天都得朗讀五頁我寫下的內容。」於是,她寫的句子變得簡潔、生動、清晰。霍普和艾肯成為最佳拍檔,活生生是百年前愛達與巴貝奇的現代翻版。

霍普撰寫的電腦發展史偏重個人,所以她的書強調個人角色。反之,在霍普的著作完成後沒多久,IBM的主管也推出自己的馬克一號發展史,把大部分功勞都歸諸在紐約恩狄考特建造機器的IBM團隊身上。「以組織歷史取代個人歷史,最符合IBM的利益。」曾深入研究霍普的史學家拜耳(Kurt Beyer)指出。「根據IBM的說法,公司才是科技創新的所在。組織裡的工程師團隊扮演無名英雄,逐步推動進步,取代了獨自在實驗室或地下室埋首研究的激進發明家。」

在IBM 版本的歷史中,馬克一號的成功是一群工程師在恩狄考特默默耕耘、通力合作,促成的一連串小創新所造就的。

霍普版的歷史和IBM版之間的差異,其實不只關乎誰功勞最大的爭議,而隱含了更深遠的意義,進一步暴露出雙方的創新史觀在根本上的差異。和霍普一樣,有些科技相關研究也強調創意十足的發明家推動了跳躍式的創新。其他研究則強調團隊和組織的角色,例如貝爾實驗室工程師的努力,以及IBM恩狄考特團隊的合作成果。後者試圖說明,有些科技突破也許表面看來像是靈光閃現後的大躍進,實際上卻是逐步演進的結果,等到各種想法、概念、技術和工程方法都同時醞釀成熟時,才一舉畢其功。這兩種科技發展史觀都不夠完善。事實上,數位時代大部分的偉大創新,都仰賴擁有高度創造力的個人,和有能力實現創意的團隊之間的良好互動。

霍普具備軟體駭客的能力,能融合桀傲不遜與合作精神。這種海盜間的同志情誼,霍普和後來世世代代的程式設計師共享的這種精神,反而讓她得到解放,而非受到束縛。拜耳曾寫道:「真正為霍普的獨立思考和行動能力開創出揮灑空間的,是她的合作精神,而非叛逆天性。」

除此之外,「bug」(錯誤) 和「debug」(除錯) 這兩個詞,也在她的團隊推波助瀾下,成為電腦界的流行用語。當時打造馬克二號電腦的哈佛建築物沒有裝紗窗。有一天晚上機器突然故障,工作人員開始檢查究竟哪裡出問題。他們發現有一隻翅膀達四公分寬的大飛蛾卡死在電機繼電器中。於是他們取出飛蛾,把牠用膠帶黏在對數表上,並在實驗日誌中記下:「面板F,(飛蛾)在繼電器中。找到第一隻真正的蟲(bug)。」從此他們就把偵錯和除錯稱為「debug」。

到了1945 年,拜霍普之賜,哈佛馬克一號成為世界上最容易撰寫程式的大電腦。只要透過打孔紙帶下達新的指令,就能輕鬆轉換工作,不需要重新配置硬體或電纜。不過,無論在當時或在後來的歷史紀錄中,大家幾乎都忽略了其中的差異,因為馬克一號(甚至1947 年推出的下一代馬克二號)採用的是電機繼電器,而不是真空管之類的電子零件。霍普談到馬克二號時說:「大家還來不及認識她,她就沒救了,因為大家都已開始電子化。」

電腦創新者和其他開路先鋒一樣,如果在半途卡住了,就會很容易從超前變落後。執著和專注等特質令他們創造力豐沛,但是面對新觀念時,他們也可能因為相同的特質而抗拒改變。賈伯斯的執著和專注十分有名,然而當他領悟到必須改弦易轍時,他會突然改變主意,令同事眼花撩亂,困惑不已。艾肯卻缺乏這種靈活應變的能力,只是一味憑著海軍指揮官的本能,採取中央集權的管理方式,所以在他的麾下工作,不那麼自由。

艾肯重視可靠度甚於速度。所以即使後來賓州大學和布萊切利園的團隊都看出真空管才是大勢所趨,艾肯仍堅持採用歷經考驗、比較可靠的電機繼電器。他的馬克一號每秒鐘大約只能執行三個指令,而賓州大學打造的ENIAC 在相同時間內可以執行五千個指令。

不過和艾肯不同的是,霍普的心胸比較開放,所以很快就改變看法。那一年,他們做了許多改善,可以更快改編程式。令霍普欣慰的是,這場程式設計革命是由女性打頭陣的。

ENIAC背後的娘子軍

打造ENIAC硬體的工程師清一色是男性,但歷史上較少提及,有一群娘子軍(尤其是其中的六位)對現代電腦的貢獻,幾乎和男性不相上下。賓州大學團隊在1945年建造ENIAC 時的想法是,這部電腦會重複執行特定的計算工作,例如根據不同變數來計算飛彈彈道。但隨著戰爭結束,開始對機器產生不同形態的需求,例如讓機器計算聲波、天氣型態和新式原子彈的爆炸威力等,因此必須經常改寫程式。

如此一來,就需要不時動用人力,把雜亂的ENIAC 電纜拔掉再插上,重新設定電路開關。起初,程式設計似乎是例行性工作,甚至是比較卑微的工作,或許這是為什麼這項任務多半交付女性來完成,而當時的社會並不鼓勵女性當工程師。但ENIAC背後的這群娘子軍很快讓大家看到(男性也慢慢領悟到),為電腦設計程式可能和硬體設計同等重要。

詹寧斯(Jean Jennings)的故事正勾勒出早期女性程式設計師的面貌。她出生於美國密蘇里州阿蘭瑟葛洛夫(Alanthus Grove)的郊區小鎮,當地人口只有104 人,她家一貧如洗,但非常重視教育。

1945 年1 月,詹寧斯完成學業時,微積分老師拿了一張徵人廣告的傳單給她看,賓州大學正在招募具數學專長的女性來從事例行數學運算,這群被稱為「computer」的計算人員,主要工作是為美國陸軍計算砲彈彈道。

從來不曾離開密蘇里州的詹寧斯決定應徵這份工作。

1945年3月,詹寧斯到賓州大學報到時年方二十,當時賓州大學雇用了大約七十位婦女,利用桌上型加數機做各種計算,一張張巨大紙張上潦草寫著各項數字。高士譚中尉的妻子阿黛兒負責人員招募和訓練。「我絕對忘不了第一次見到阿黛兒的情景。」詹寧斯表示:「她嘴角叼著菸,慢慢踏進教室,走到一張桌子旁,一腿橫跨桌子的一角,然後用微帶布魯克林腔的英文,開始講課。」這對詹寧斯而言是脫胎換骨的經驗。

在她到達的幾個月後,這些女性之間流傳著一份通知,上面說有六個職缺正在徵人,工作和某具神祕的機器有關,而這個機器放置在賓州大學摩爾工程學院一樓深鎖的房間中。「我完全不清楚那是什麼樣的工作,也不知道ENIAC 是什麼。」詹寧斯回首當年時表示:「我只知道我或許能從頭參與某個新發展,我相信我的學習能力和工作能力絕對不輸人。」她也期盼能從事比計算彈道更有趣的工作。

1945年夏天,六位女性被送去阿伯丁試驗場學習如何使用IBM打孔卡以及連接插頭板。

經過了六週的訓練,六位女程式設計師把男友收藏到記憶庫中,回到賓州大學,接著收到一堆海報大小的ENIAC 說明圖表。詹寧斯說:「結果,即使是個別真空管出錯,我們都有辦法抓出來。」她們設計了一個系統,可以偵測出一萬八千個真空管中,究竟是哪個真空管燒壞了。「由於我們既懂應用,也了解機器,我們學會診斷問題,即使沒有比那些工程師厲害,也和他們不相上下。說真的,工程師都樂透了,他們從此可以把偵錯的工作留給我們處理。」

霍普在哈佛大學開發次常式的時候,這批ENIAC的娘子軍差不多也在做相同的事情。

詹寧斯在2011年逝世,過世前不久她曾回顧過往,並自豪的點出,史上第一部通用電腦的程式都是由女性設計的:「雖然在我們出道的年代,女性的職涯發展機會十分有限,但我們仍協助開創了電腦時代。」當時之所以出現這樣的情況,是因為主修數學的女性很多,而社會也需要她們的能力。諷刺的是:當時手裡拿著新玩具的男生一心認定,組裝硬體才是最重要的工作,應該由男人來擔當大任。

「當時美國科學與工程界的性別偏見比今天嚴重多了。」詹寧斯說:「假如當初ENIAC的主事者曉得,程式設計對電子電腦的運作如此重要,而且程式設計如此複雜,他們或許會有些遲疑,不敢把這樣的重責大任交到女人手上。」

摘自《創新者們》

Photo:Boegh, CC Licensed.

書到通知我

請輸入您的 Email 作為書到通知的信箱