程式設計師猜不到,計算機剛出現的時候,是用女人頭做計算能力單位的

2021-02-13 未來論壇


授權轉載自:把科學帶回家,ID:steamforkids

來源 fas.harvard.edu等

編譯 七君

你有沒有考慮過,在計算機和計算器出現前,人們是怎麼算賽因扣賽因,還有對數的呢?難道每次要用的時候,都要親自手算嗎?

其實,在2百多年前,人肉計算機就出現了;一直到20世紀60年代真正的超級計算機出現前,計算都是人肉實現的。而且這些人肉計算機,大多數時候是女孩子,因此在計算機出現之初,計算能力的單位是用女孩子的人頭數來衡量的。

1790年,法國數學家和工程師,水利學家 Gaspardde Prony 組織了一批人肉計算機。這些人肉計算機的任務是,在法國大革命後的百廢待興的法國製造對數表和三角函數表,這樣法國國民議會才能進行土地測量和登記。

這些人肉計算機,許多是因為貴族倒臺而失去工作的假髮製造者,而這些假髮製造者中的大多數是女孩子。

18世紀其實還有一位曾被歷史淹沒的女人肉計算機。

因為對哈雷彗星感到好奇,法國天文學家亞歷克西斯·克勞德·克萊羅(Alexis-Claude Clairaut,1713-1765年)開始計算哈雷彗星下一次會在什麼時候探訪地球。他把這個計算過程分成了好幾步,並在兩位同事,法國數學家和天文學家妮可-雷訥·勒波特(Nicole-Reine Lapaute) 和法國天文學家傑羅姆·拉朗德(Joseph-Jerome de Lalande)的幫助下,在盧森堡宮裡用鵝毛筆和亞麻布紙進行演算。

妮可-雷訥·勒波特是一位法國皇家鐘錶匠的妻子,她曾經和丈夫建造了一個具有天文曆法功能的時鐘。勒波特的父母比較開明,因此她受到了比較好的教育,她的丈夫也允許她從事研究,因此勒波特成為了拉朗德的長期科研搭檔。

勒波特和拉朗德計算的是木星和土星的引力(三體問題)以及哈雷的軌道問題。1750年左右,勒波特用三角學的方法幫助克萊羅計算哈雷彗星下一次造訪地球的時間。他們一直工作了6個月,終於預測出,哈雷彗星將在1759年4月13日回歸。

這數字和實際日期3月13日只差1個月。這個誤差主要是因為當時天王星和海王星還沒有被發現,因此他們沒有算上這兩個行星的影響。但是,他們3人的計算比哈雷本人的預測——1758年要準確得多。

不過,克萊羅曾經想把勒波特的名字從這個大發現中剔除,虧了拉朗德翻案,否則我們就不知道18世紀還有這樣的強大大腦存在了。

到了19世紀,便宜好用的受過高等教育的女孩子成了天文計算的主力。

1885-1917年間,哈佛大學天文臺(Harvard College Observatory)僱傭了80個女人肉「計算機」來分析成千上萬的天文學攝影。

 

這些「照片「是秘魯和馬塞諸塞州的天文望遠鏡拍攝的。因為當時的技術限制,這些「照片」用的是感光玻璃板。哈佛大學介紹,每塊玻璃版上可能有超過10萬個恆星。這些女人肉計算機要計算這些恆星的亮度,並要根據恆星光譜將它們一個個分類。

哈佛大學天文臺的女人肉計算機

圖片來源:harvard.edu

 

哈佛大學表示,僱傭女人肉計算機的原因是僱不起男性,因為這些女性願意接受25美分的時薪(相當於現在的6.6美元/小時)。當時,麻省的女子文理學院拉德克利夫學院的畢業生甚至願意當不拿薪水的實習生。

 

在這些女人肉計算機中,亨麗愛塔·勒維特(Henrietta Swan Leavitt)和安妮·坎農(Annie Jump Cannon)最為著名,因為她們的發現改變了天文學的歷程。

女人肉計算機亨麗愛塔·勒維特的發現讓埃德溫·哈勃(Edwin Hubble)發現了哈勃定律,並得以發展出關於宇宙膨脹的理論。

另外一位女人肉計算機安妮·坎農後來發明了哈佛分類法(Harvard Classification Scheme),也就是根據恆星的顏色對其進行分類的方法,這個分類法後來在天文學上得到了廣泛使用。

1945年,世界上第一臺可編程的通用計算機埃尼阿克(ENIAC)出現了。

部分保存在賓夕法尼亞大學的埃尼阿克

圖片來源:wikimedia

埃尼阿克是個大胖子,重達27噸,佔地167平方米,胃口也很大,功率是150千瓦。在理論上,這個用真空管制造的計算機可以處理任何問題。但是在二戰時,埃尼阿克的主要任務是計算彈道。

在二戰快結束的時候,賓夕法尼亞大學的6位女性被挑選出來做埃尼阿克的程式設計師。她們是 Jean Jennings Bartik,Betty Holberton,Marlyn Wescoff,Kathleen McNulty,Ruth Teitelbaum 和 Frances Spence。

埃尼阿克的六位女程式設計師之一的Frances Spence

圖片來源:wikimedia

這些女性很樂於做這個工作,因為那個時候有知識有技術的女人大都只能去教教書,或者為保險公司做精算師。

但是,埃尼阿克這個計算機有個小問題:埃尼阿克的創造者(因為懶)沒有寫任何操作手冊,所以具體操作全要這些女程式設計師自己搞定。

後來嫁給埃尼阿克的發明人之一,美國物理學家約翰·莫奇利(John Mauchly)的第一代程式設計師 Kay McNulty 在1977年接受採訪時表示,當時一開始有人給她們一大堆藍圖,藍圖裡描繪的是埃尼阿克所有電路板的圖解,然後告訴她們:

「用它們你們就知道機器的原理啦,然後你們就知道怎麼給它編程啦。」

但是在通用計算機剛剛出現的時代,誰也沒經歷過這種事兒,所以誰也不知道,誰也不敢問。要是在現在,你把計算機的電路板給程式設計師看,啥操作說明也沒有,然後讓他們根據電路板編程,他們肯定想打人。

Betty Jean Jennings (左) 和 Frances V. Spence (右)正在操作埃尼阿克的控制面板。

圖片來源:wikimedia

總而言之,女程式設計師的編程工作是,首先把要解決的問題用機器能讀懂的語言描述和翻譯出來,然後把這些代碼通過機器的開關輸入進去。

聽起來很簡單,但是上手之後,這些女程式設計師才真的想打人。一開始,光是為埃尼阿克輸入要處理的問題就要花費數天時間。聽一聽心直口快的埃尼阿克第一代程式設計師 Jean Bartik 是怎麼描述這個工作的吧:

「埃尼阿克就是一個XX(碧池)。」為了調試程序,她們必須要到這個27噸的胖子的嘎吱窩裡去看到底哪根真空管出問題了。你要是讓現在的程式設計師拆開電腦調試程序,不打人那都是真愛。

好在這6個女程式設計師設計了一種儲存程序的方法,簡化了問題輸入的過程。埃尼阿克的女程式設計師之一 Jean Bartik 說,用這種方法,「你就不需要再對機器進行設置了,你只需要調整一下開關和函數表就可以了。這樣一來,對埃尼阿克進行編程的大到嚇人工作量就成為過去了。」

另外,為了改善用埃尼阿克編程的效率,McNulty 發明了子程序,Betty Holberton 則發明了世界上第一個程序生成器(能產生其他程序的程序)、歸併排序程序,還有斷點程序(命令計算機停止,方便程式設計師調試的程序)。

這一切努力都沒有白費。Jean Bartik 回憶:「埃尼阿克面世的那天是我人生中最光輝燦爛的一天。埃尼阿克計算彈道的速度比子彈還快,是此前任何機器運算速度的1000倍。」

當被問到,埃尼阿克的設計者約翰·皮斯普·埃克特(J. Presper Eckert)和莫奇利的編程能力是不是和這6人小隊一樣強時,她直接說:「他們當然比不上啦。他們當然知道埃尼阿克的工作原理,但是他們的工作並不是編程。」

現在,這批埃尼阿克女程式設計師中的很多人都被視為計算機編程的先鋒人物。

你可能不知道,在二戰前後,NASA 還曾有全女子人肉計算機小部隊。

2016年的好萊塢電影《隱藏人物》的三位原型,西部電腦 Mary Jackson(上左),Katherine Johnson(上中),Dorothy Vaughn(上右)和三位對應的主演(下排)。

1943-1958年,為 NASA 的前身——蘭利航空實驗室(Langley Memorial Aeronautical Laboratory)執行計算任務的是一些女黑人。她們承擔了各種航天工程的任務,其中就包括為美國的第一個載人航天計劃——水星計劃進行軌道計算。 

這些女黑人肉計算機後來被稱為 West Computers(西部電腦),這些人的事跡也被拍成了2016年上映的電影《隱藏人物》(Hidden Figures)。

 

20世紀40年代,NASA 的噴氣推進實驗室(JPL)還有登月計劃和火星探索計劃,當時參與這些項目的計算的大多數也是女性,她們是 JPL 的女人肉計算機,被稱為 Rocket Girls(火箭女孩)。

1953年,JPL的女人肉計算機Rocket Girls,這些姑娘的工作是幫助美國發射衛星,並進行月球任務和行星探索任務。

圖片來源:NASA/JPL-Caltech

二戰後的一段時間裡,科研和企業依然需要人肉計算機。

1950年左右,義大利的耶穌會傳教士 Father Roberto Busa 和 IBM 合作,組織了一群人肉計算機,專門用來把中世紀哲學家託馬斯·阿奎那(Thomas Aquinas)的書籍翻譯成打孔卡(punchcard)——打孔卡相當於那個時代的U盤,並對文本進行語言學和文學分析。

用打孔卡編程的時代

圖片來源:wikimedia

這個工程規模浩大。話癆阿奎那寫了大概9百萬字的材料,因此 Busa 的人肉計算機分析進行了超過30年。這項工作後來被稱為 INDEX THOMISTICUS,這是世界上比較早的利用(人肉)計算機進行的數字人文研究。

而參與這個首批人文學科數位化工作的,也是女人肉計算機。義大利米蘭聖心天主教大學 CIRCSE 研究中心的研究員 Marco Passarotti 後來回憶,Busa 曾和他表示,選擇女孩子做人肉計算機的原因是她們比男孩子更細心。

事實上,因為那個時候的人肉計算機大多是女性擔當,因此二戰後對計算機的計算能力的描述就是用「千女子力」(kilo-girl)來表示的,就和「馬力」類似。

「千女子力」這個單位代表著,某臺計算機的計算能力等同於1000個女性。而計算時間則被稱為「女子時間」(girl hours)。

 

這種狀況一直持續到60年代。

在20世紀60年代初期,編程被看作是適合女孩子的工作,當時的女性時尚雜誌《時尚》(Cosmopolitan Magazine)還曾在一篇名為「計算機女孩」(The Computer Girls)的文章中寫道,對女孩子來說計算機編程領域提供的工作比其他領域都多。

20世紀60年代,編程被看作是適合女孩子的工作,女性時尚雜誌《時尚》(Cosmopolitan Magazine)稱,編程這個工作很適合女孩子,收入很高(實習生8000美金一年,高級系統分析師2萬美金一年;1960年的2萬美金相當於現在的17萬美金),並且刊登了 IBM 的系統工程師 Ann Richardson 的照片。

圖片來源:sice.indiana.edu

計算機協會(ACM)的教育主管 James Adams 也曾說:「除了教書以外,我不知道還有什麼工作比編程更適合女孩子。」

美國海軍準將及計算機科學家,世界最早一批的程式設計師之一格蕾絲·赫柏(Grace Hopper)還曾告訴一位記者:編程「就像準備晚飯,你要提前做好規劃以備不時之需…女性『天生』適合計算機編程。」

格蕾絲·赫柏

1965年,超級計算機 CDC 6600 出現了。這時候開始,人肉計算機的重要性就下降了。後來,由於計算機技術的發展,人肉計算機終於成為了過去時。

1962年,美軍Ballistics Research Laboratory的女人肉計算機。

圖片來源:U.S. Army/ARL Technical Library Archives

在被問到給現在的女孩子的建議時,Jean Bartik 說:「別聽別人說你做不了什麼。如果你相信你能做到,並且給自己相應的教育,你可以成就任何事。」

總之看完這些女人肉計算機和女程式設計師先驅的故事,時代有沒有進步我不知道,我只知道現在的計算能力不是用女人頭做單位的,而是用禿頂的程度來描述的。以前的女程式設計師應該沒有這種痛點吧。

同芯共創,智造未來

6月29日

我在2019未來論壇·南京峰會等你!

了解更多嘉賓及分享信息請掃碼報名,

或關注未來論壇持續了解詳情

中國如何破解「缺芯」之痛,新思維直面「中國芯」的未來之路

未來論壇 | 江穎:人類首次「看到」水的原子極限

未來論壇 | 許晨陽:菲爾茲獎的魔咒和科學家的創造性

未來論壇 |  科學和藝術碰撞,到底誰更腦洞大開?

兩千多度時,冰變成了黑色

屠呦呦團隊放大招了!「青蒿素抗藥性」等研究獲新突破

人類祖先為什麼直立行走?要從800萬年前超新星引發的閃電說起...

相關焦點

  • 程式設計師是做什麼的?未來計算機變得智能,就不需要程式設計師了嗎?
    甚至不少程式設計師對他們是做什麼的都沒有清晰的概念。 在這篇文章中,我想給不知情的人解釋一下程式設計師到底是做什麼的: 程式設計師是將人類想法翻譯成計算機語言的譯者。
  • 這個女人是計算機時代開創者之一
    翻譯作者,流水,哆嗒數學網翻譯組成員翻譯作者,Math001關注 哆嗒數學網 每天獲得更多數學趣文縱觀人類歷史,很多人都有這樣的成見:那些開創新局面和改變世界的大英雄、大思想家、大科學家都不可能是女人。他們說,當男人們在文學、藝術、科學裡披荊斬棘,踏浪前行,甚至顛覆舊有觀念的時候,女人們只是在家裡洗衣做飯,相夫教子。
  • 計算機畢業,遲遲找不到工作,可以往這3個行業發展,前景不錯
    所以一個學期的課程學下來,也並沒有什麼顯著的效果,至少做出來的東西,並不能夠直接用於商用,當作業看一下還好,商用的話就差了些。不僅是我高中同學的專業會有這種情況,其實其他的一些專業照樣會有類似的情況,就比如計算機專業。計算機專業在高考後選專業時,還是是比較熱門的一個專業。
  • 初中學歷可以轉行做程式設計師?
    初中學歷可以轉行做程式設計師,但是能否有更好的發展很難說。我本人普通本科畢業,做了六年程式設計師,而且我本科期間所學專業也不是計算機,後來成為程式設計師也是自學轉行的,自認為轉行做程式設計師並不難。因為在軟體項目實際開發過程中會遇到各種各樣的問題(也就是常說的bug),而且問題越來越新奇古怪,如果你沒有一定的計算機專業基礎,你會發現解決bug真的很吃力,無處下手,舉步維艱。所以我經常自學,甚至打算讀一個在職研究生來提升自己的能力,完善自己的知識結構。
  • 計算的極限——黑洞計算機
    但是,考慮到未來會出現革命性的新技術,這種估計就很可能相當不準了。20世紀50年代出現的第一臺計算機ENIAC重30噸,佔地167平方米,運算速度是每秒10萬次。其中包含了17468個真空管。單個真空管約幾釐米長,而真空管的尺寸乘以數量就限制了這類計算機的大小。
  • 大學生|想當圖像程式設計師,卻苦於找不到途徑?全文告訴你!
    不論你是剛完成學業的新人,還是已經在行業中試水不同角色的老手,希望本文能夠讓你獲知成為一名圖像工程師需要具備的知識。 優秀的數學能力 淵博的三角法,線性代數甚至是微積分知識對於圖像程式設計師來說極為重要,因為這一職業的許多日常工作就涉及到多種複雜程度的數學問題。 我當然希望求職者了解圓點和向量積產品,以及它們在計算機圖像中的作用。
  • 程式設計師要不要學習算法、數據結構、計算機原理等等基礎知識?
    談著談著就到了該工作的年齡了,可是王麻子和李狗蛋卻怎麼都找不到工作。有一天,村長找到他倆說:村裡現在用水很不方便,河離村子又太遠,很多村民家裡沒有壯丁,用不上水,不如你倆就幫村子裡的人挑水吧,一桶水1毛錢。於是兄弟倆就忙活起來,第一天他們每人挑了20桶,王麻子高興壞了,說自己馬上就要致富了,再挑幾年一定能成為村子裡最富有的人。
  • 大學裡計算機老師那麼厲害,為何不從事薪資更高的程式設計師工作呢?
    術業有專攻,專業的程式設計師和大學計算機老師還是有著非常大的差別,大學計算機老師的職責不是自己去編寫程序,主要任務是把知識灌輸給大學生,很多程式設計師的編程能力很強但距離傳道受業還是有著非常大的差距
  • 程式設計師及嵌入式的一些學習建議
    但是又有幾個人能走到設計師、經理的位置,這使得好多想做程式設計師的畢業生很猶豫,不知道到底該不該做程式設計師。其實大部分職業都一樣,有能力的自然會往高處走,沒能力的自然就被淘汰。優勝劣汰的原則大家都知道,幹別的行業三四十歲無所建樹不也玩完嗎?
  • 兩位女性程式設計師在混沌理論的誕生中發揮了關鍵作用
    在論文的致謝中,Lorenz寫道:「特別感謝Ellen Fetter小姐處理許多數值計算。」「耶穌...... 誰是艾倫·費特?」羅斯曼回憶起當時的思考。「這是計算物理學中最重要的論文之一,更廣泛地說,是計算科學,」他說。然而他找不到關於這個女人的任何信息。「在所有關於洛倫茲的書中,這個偉大的發現都沒有。」
  • 普通程式設計師與高級程式設計師有什麼差別?你知道嗎?
    要成為一個工程師,首先要有一顆渴望成為工程師的心,因為我們根本不能奢望一個從沒想過成為工程師的人成為一個有實際工程能力的人!程式設計師的基本能力是:Tasking和學習能力。當好程式設計師的能力是:用更好的方法來實現功能。0.文檔能力「文檔是第一生產力」,這一點在程式設計師的世界是毫無異議的。
  • 量子力學目前最大的應用,量子計算機的計算能力有多強?超乎想像
    但量子力學還會有其他的潛在價值,那就是我們正在研究的並且已經初步實現的量子計算機,它跟我們普通的計算機有什麼區別呢?它的計算能力有多強大?絕對超乎你的現象。二進位代碼二進位代碼是一種由0和1也就是比特構成的計算機語言,信息集中最小的單位是比特,而電腦只是簡單的把信息破解成最小的組合,然後非常快速的將他們變換,量子計算機也是使用比特,但是不同於傳統的比特而是可以在任何時候轉換成0或者1,因為量子是疊加態,它既可以是0也可以是1,量子比特更加具有靈活性。
  • 據說不知道這些大神的程式設計師不是真正的程式設計師
    那些找到Bug 的人收到高納德籤名的支票以後也不去兌換, 而是作為珍品收藏了 :-)   《電腦程式設計的藝術》展示了高納德深厚的理論功底和高超的數學知識,TEX 則體現了一個超級程式設計師的能力,在計算機的歷史上,極少有人能把超強理論和超一流的實踐能力集於一身,實在是令人嘆而觀止。   感謝上帝,給我們送來了高納德 。
  • 最偉大的程式設計師高德納:談電腦程式設計藝術
    這又要回溯到最初的年代,當時真正研究計算技術的人很可能還不到一千個。我沒有把這看作將要影響世界的事情,但仍然覺得這些很酷的資料是值得認真整理的。那時候,我就考慮還有什麼人合適寫作這樣的書籍。我能想到的每個人,他們都很可能只會關注自己所研究的那個領域。在我所知道的人當中,只有我自己是沒有發明創造過什麼東西的,因此我設想自己能夠以中立的立場來擔任他們的代言人。
  • 我們啥時候用上量子計算機?|神奇的量子科技
    在三大發展方向中,最有想像力的是量子計算。與傳統計算機相比,量子計算機的計算速度和運算能力都有極大提升。 科學家們在尋找「一雙新鞋」,從根本上替代半導體計算機模式。他們把目光投向具有「疊加態」的量子。 中國工程物理研究院微系統與太赫茲研究中心副研究員姚堯說,傳統的二進位計算機裡通過0和1表示信息單位,量子計算則以量子比特作為信息單位。
  • 程式設計師當之無愧的第一女神!詩人拜倫之女-Ada傳奇人生
    程式設計師當之無愧的第一女神——Ada,絕對非她莫屬,她也是著名詩人拜倫的嬌女,人生充滿了傳奇。No1、Ada是世界上第一個程式設計師,重點申明一下,全世界,everywhere,不論男女,她都是史上的第一給程式設計師又是女神,Ada還是英國著名詩人拜倫獨女。
  • 計算機極簡發展史
    ,個人計算機強調用戶體驗,價格低廉,性價比高,個人計算機雖然出現時間很短,但是卻大大推動了計算機歷史的進程。伺服器(Server),伺服器通常藉助網絡訪問,用於執行大負載任務,可以處理複雜的應用,伺服器相比個人計算機,有著更強的計算、存儲和 I/O 能力。
  • 知乎高贊:985計算機視覺畢業後找不到工作怎麼辦?怒刷leetcode...
    然而,真正的人才什麼時候都緊缺,搞紮實自己的基本功比什麼都重要。心態放平,好好刷leetcode,好offer總在不遠處。   計算機視覺畢業後找不到工作怎麼辦?   AI專業畢業後是不是找不到工作?近日,有知乎網友提問,獲得了70萬閱讀量。
  • 我們啥時候用上量子計算機?| 神奇的量子科技②
    在三大發展方向中,最有想像力的是量子計算。與傳統計算機相比,量子計算機的計算速度和運算能力都有極大提升。來個例子感受一下▼2019年穀歌表示,他們研發的53個量子比特超導晶片,可以在200秒內,完成目前世界上最快的超級計算機需要1萬年才能夠完成的計算。
  • 資深程式設計師大佬告訴你,如何成為一個C++高級程式設計師
    GUI想要學習交流C/C++,可以私信小編 發C++ 獲取資源和一個程式設計師交流圈。3. 數據結構和算法很多人都忽視了數據結構和算法方面的知識,尤其是一些程式語言的庫做得非常好,幾乎不需要自己去實現一些數據結構和算法,導致現在很多程式設計師不 重視甚至忽略這方面的知識。但是,當我們想讓我們的程序跑的更快、內存佔用更少的時候,這些知識就非常非常重要了。