• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      瑪格麗特:“軟件工程”的書寫者

      2016-05-14 15:24:52
      大眾科學(xué) 2016年6期
      關(guān)鍵詞:程序員瑪格麗特阿波羅

      1936年,瑪格麗特出生于美國(guó)一個(gè)普通的家庭。大學(xué)時(shí),她主修數(shù)學(xué)。讀書期間,她嫁給了詹姆斯·漢密爾頓。畢業(yè)后,瑪格麗特找了一份教師的工作。那時(shí),她的丈夫還在哈佛法學(xué)院讀書,她因而承擔(dān)起了家庭的重任。

      正當(dāng)兩人的的小日子過得緊緊巴巴時(shí),一個(gè)工作機(jī)會(huì)擺在了瑪格麗特面前,當(dāng)時(shí)計(jì)算機(jī)科學(xué)的先鋒MIT里有一個(gè)實(shí)驗(yàn)室在招臨時(shí)編碼工,瑪格麗特抱著試試看的態(tài)度,就這樣踏進(jìn)了程序員的殿堂。

      一邊看孩子一邊寫程序

      一開始,她為天體學(xué)系寫天氣預(yù)報(bào)系統(tǒng)的代碼,后來又去了大名鼎鼎的林肯實(shí)驗(yàn)室,為美國(guó)軍方SAGE項(xiàng)目寫代碼——用電腦程序幫助偵查危險(xiǎn)的“不友好的飛行物”。

      這些毫無頭緒的程序有多難處理呢?對(duì)此,當(dāng)時(shí)有人用希臘語(yǔ)和拉丁語(yǔ)寫評(píng)論來取樂。而瑪格麗特是全實(shí)驗(yàn)室第一個(gè)解決問題的人,她還把調(diào)試方法翻譯成希臘語(yǔ)和拉丁語(yǔ),漂漂亮亮地回敬了一發(fā)。

      瑪格麗特的女兒勞倫也在這時(shí)出生了,繁忙的媽媽不得不將小勞倫帶去工作,讓她睡在實(shí)驗(yàn)室的地板上,醒來后則獨(dú)自玩耍。

      當(dāng)時(shí),人們對(duì)這樣一個(gè)“工作狂媽媽”十分不理解,但瑪格麗特并不在意,她熱愛著這份雖然枯燥卻充滿挑戰(zhàn)和“神秘感”的工作。

      挽救飛船的“不重要”程序

      由于出色的表現(xiàn),瑪格麗特獲得了另外一個(gè)機(jī)會(huì):加入MIT的Charles Stark Draper實(shí)驗(yàn)室,帶領(lǐng)一個(gè)小團(tuán)隊(duì)為NASA的阿波羅計(jì)劃寫軟件。

      在阿波羅最初的預(yù)算報(bào)告中,根本就沒有“軟件”二字。不過后來,NASA意識(shí)到了軟件的重要,逐漸把軟件相關(guān)的團(tuán)隊(duì)擴(kuò)大到了400多人。但瑪格麗特依然是一個(gè)無名小卒,她負(fù)責(zé)的是整個(gè)計(jì)劃中最不受重視的部分:“萬一”任務(wù)失敗之后的后備方案,連這個(gè)部分的名字,都被稱作“Forget it”。

      “我想為整個(gè)系統(tǒng)中加入一旦人工出錯(cuò)之后的備用糾錯(cuò)方案,”瑪格麗特說,“但是他們不同意。他們說,宇航員們都經(jīng)過了嚴(yán)格的、完美的訓(xùn)練,‘絕對(duì)不可能出錯(cuò)?!?/p>

      那時(shí),計(jì)算機(jī)的存儲(chǔ)空間和計(jì)算能力都十分有限,決策者不希望有任何“累贅”的部分?,敻覃愄?zé)o奈,只好在操作系統(tǒng)里做了一個(gè)備注:“不要在飛行時(shí)選擇P01模式”。

      但壞事兒還是發(fā)生了。在阿波羅8號(hào)環(huán)繞月球任務(wù)中,宇航員羅威爾一時(shí)疏忽,按下了P01模式,所有巡航數(shù)據(jù)都被清空了,飛船分分鐘迷路。休斯頓緊急打來電話,瑪格麗特領(lǐng)著一群程序員,連夜奮戰(zhàn)了9個(gè)小時(shí),才修復(fù)了這個(gè)問題,使阿波羅8號(hào)得以成功返航。

      而真正的考驗(yàn)還在后面。隨著登月計(jì)劃緊鑼密鼓的進(jìn)行,美國(guó)政府和NASA都繃緊了弦。瑪格麗特的加班也越來越多。而成就總是伴隨著錯(cuò)誤和風(fēng)險(xiǎn)——就在阿波羅11號(hào)歷史性著陸月面的3分鐘前,忽然警報(bào)大作,軌交雷達(dá)發(fā)來的大量數(shù)據(jù)涌入電腦存儲(chǔ)區(qū),快把電腦弄崩潰了。而若是系統(tǒng)崩潰,飛船將毫無懸念地墜毀在月球上。

      但是,瑪格麗特設(shè)計(jì)的系統(tǒng)頂住了這個(gè)壓力。在大量數(shù)據(jù)涌入電腦時(shí),最寶貴的計(jì)算資源被用于最關(guān)鍵的部分,比如安全登陸,而處理不重要的雷達(dá)交互數(shù)據(jù)的任務(wù)被砍掉。

      這次事件,促使她提出了后來的“異步程序”概念,即程序可以不用等待當(dāng)前任務(wù)響應(yīng),先處理其他任務(wù),待到任務(wù)處理完成之后再接受任務(wù)完成的通知。這可以提高計(jì)算效率,防止程序被卡死。

      瑪格麗特拯救了人類的登月計(jì)劃,不僅是因?yàn)樗穆斆?,更是因?yàn)樗呐托乃伎b密,她的團(tuán)隊(duì)在每次程序確定之后,都會(huì)一遍遍嚴(yán)格地測(cè)試,使用模擬器來模擬登陸狀況。許多問題她早就考慮到了,畢竟“不出錯(cuò)”永遠(yuǎn)都是一個(gè)理想狀態(tài)。

      “軟件工程”的誕生

      在那個(gè)年代,程序員工作系統(tǒng)化程度很低,如果出現(xiàn)了錯(cuò)誤,大多數(shù)都是潦草地在“出錯(cuò)理由”里面填一個(gè)“有bug”來解決。但瑪格麗特認(rèn)為這遠(yuǎn)遠(yuǎn)不夠,她認(rèn)為程序員需要理解錯(cuò)誤,梳理錯(cuò)誤的原因,并防止下一次程序出錯(cuò)。

      此時(shí),寫程序更像是一門手藝,完全沒有“軟件工程”的概念,而瑪格麗特用自己的實(shí)踐,賦予了這個(gè)詞現(xiàn)實(shí)的意義。她開始用“軟件工程師”來稱呼她在內(nèi)的程序員,在她的推動(dòng)下,“軟件工程”成了一門更規(guī)范、更系統(tǒng)的科學(xué)——瑪格麗特將軟件工程這份事業(yè)提升了一個(gè)高度。

      離開NASA的瑪格麗特自立門戶,她在自己所涉及到的許多領(lǐng)域,都有創(chuàng)見——比如系統(tǒng)設(shè)計(jì)、軟件開發(fā)、過程模型、開發(fā)范式、軟件可靠性、周期自動(dòng)化等。

      是的,人們不應(yīng)該忘記,那個(gè)在層疊的代碼背后時(shí)常沉默的女孩,也不應(yīng)忘記那些為早期計(jì)算機(jī)事業(yè)付出辛勞的前輩們——請(qǐng)記住他們,然后在他們鋪下的道路上繼續(xù)前進(jìn)。(編輯/夏冬)

      猜你喜歡
      程序員瑪格麗特阿波羅
      為了讓媽媽看懂地圖,一位“野生程序員”做了個(gè)小程序
      逃家小兔
      瑪格麗特·米德:20世紀(jì)著名的人類學(xué)家
      怎樣成為一名優(yōu)秀程序員
      幼兒100(2020年29期)2020-10-21 06:17:58
      阿波羅13號(hào)與與重返月球
      回望阿波羅11號(hào)
      阿波羅之春
      拯救阿波羅13號(hào)
      程序員之子
      意林(2017年24期)2018-01-02 22:49:14
      加班
      三月三(2016年6期)2016-06-21 10:25:33
      吉安市| 井陉县| 南江县| 河曲县| 沙河市| 丹东市| 广安市| 临城县| 汽车| 忻城县| 陆良县| 湖南省| 邢台市| 临西县| 河西区| 萝北县| 寻乌县| 晋城| 江达县| 高邑县| 榆社县| 黄骅市| 康平县| 泰兴市| 沿河| 青阳县| 锡林浩特市| 伊吾县| 儋州市| 西城区| 天水市| 甘洛县| 仙游县| 庆阳市| 军事| 福鼎市| 芒康县| 嵊泗县| 东阿县| 万荣县| 卢氏县|