個人資料
不很明了 (熱門博主)
  • 博客訪問:
歸檔
正文

中國本屆政府是曆史罕見的敗家子

(2024-02-05 00:51:55) 下一個

 

 

(拖到後麵看格雷絲 赫柏的人生傳奇)

 

 

 

 

第一個程序臭蟲(Bug)的由來

 

對萬千程序猿來說,在這個世界上如果有比寫程序更痛苦的事情,那一定是親手找出自己編寫的程序中的bug(漏洞)。幾十年前,也有一位女性深感寫程序的痛苦,然後她就設計了一套全新的計算機語言,把代碼從“01001….”變成了現在我們起碼看得懂的樣子,現在世界上70%的數據還在用她發明的語言進行處理。

對了,世界上第一隻bug也是她順手找出並命名的。

因為她寫的程序太高超,美國海軍部搞不定,隻好兩次把已經退休的她請回來,還為了她把法定退休年齡延長了5年。

耶魯大學第一位女數學博士、國防部傑出服務勳章這些名頭對她來說都是小成就,過世後奧巴馬還追授她總統自由勳章,這是美國平民能獲得的最高榮譽了。

如果不是她,程序員大概會比現在更愛格子衫,抱更久的電腦,掉更多的頭發,感歎更多代碼的無常,並且短命個30年。

這個人,就是我們今天要介紹的主人公,與“阿蘭·圖靈、史蒂夫·喬布斯、比爾·蓋茨”等一同入選“IT界十大最有遠見的人才”的唯一一位女性——格蕾絲·赫柏。

 

 

1906年,赫柏出生在美國紐約。童年的赫柏,展現出了不同於一般小女孩的愛好:爬樹、遊泳、劃船、捉迷藏,熱衷於一切動來動去上躥下跳的活動。

七歲時,為了弄懂“鍾為什麽朝一個方向轉”,赫柏把家裏整整七台鍾拆了個七零八落。

老是拆東西的小赫柏於是也總被罰,母親的懲罰很特別——刺繡。這個別致的懲罰培養了赫柏宜動宜靜的好習慣。

除此之外,和數學界諸多“大牛”的母親一樣,赫柏的母親也是一個喜歡數學的家庭婦女,她在赫柏的數學啟蒙上發揮了非常重要的作用。

從上學起,赫柏在數學、物理方麵都異常出色,一路順順利利直到16歲參加高考,卻因為偏科太嚴重,拉丁文考試不及格,沒能考上大學。

複讀一年後,赫柏考上韋莎學院。這所大學在2012年《福布斯》公布的美國最好大學中排名第20位,新聞報道更是將它評價為最值得選擇的大學。

畢業時,赫柏不僅同時獲得數學、物理學位,還獲得美國優等生的榮譽,留校擔任教師的她被聘為學院副教授。

利用獲得的獎學金,赫柏再次考進耶魯大學深造,2年後取得數學碩士學位,繼而又攻讀博士學位,成為了耶魯大學曆史上第一位女數學博士。

世俗眼中最美好青春的年華,赫柏都花在了學問的深造上。

畢業後,赫柏回到韋莎學院教書。

但人生總是會出現各種意想不到的轉折點,對赫柏來說,這個拐點是二戰。

赫柏的曾祖父是一名海軍將軍。1939年二戰爆發時,滿懷愛國熱情的赫柏也堅決要求加入海軍。

參軍要經過考試,盡管赫柏身高體重都不合格,她死磨硬纏硬是說服了考官,讓自己進入海軍軍校學習,並以第一名的成績畢業。

畢業的赫柏因為出色的數學背景,被分配到美國船舶局位於哈佛大學的戰時科研中心。

彼時,軍方正在開展世界第一台大型數字計算機的研究項目——馬克一號。赫柏被任命為著名計算機專家霍德艾肯博士的助手,成為這個項目的第三名程序員。

 

 

在這兒,赫柏開啟了自己程序員的生涯。

她的主要任務,就是為馬克一號,還有接下來的馬克二號,馬克三號編寫程序與軟件。

一天,計算機發生故障,赫柏經過排查,在計算機的繼電器觸電裏,找到了一隻被夾扁的小飛蛾,這隻小蟲子卡住了機器的運行,赫柏順手將飛蛾夾在工作筆記裏,並詼諧的把程序故障稱為“bug”。

這就是我們今天最愛說的“bug”的由來。它的意思,和原身一致,真就是“一隻臭蟲”。

 

 

赫柏發現第一個“bug”後的手稿

 

這一稱呼後來演變成表達缺陷漏洞的計算機專業術語,人們習慣地把排除程序故障叫做“debug”(除蟲)。

當時的計算機隻能識別機器語言——由二進製代碼1和0表示的特定指令集合,而且不同型號的計算機使用的機器語言不一樣,每次使用新的計算機都要程序員背一套新的指令,想想就令人絕望。

再說了,這些全是由“01001001010101010000010111100……”的觀感性真的奇差,非常非常容易出錯,程序員們檢查起來更是萬念俱灰。

 

 

眼看頭發越掉越多的赫柏想要改變程序員的工作處境,維護大家身心健康。她決心開發一套高級編程語言,讓人們能夠以接近英語寫作的方式來編寫程序。

那麽問題來了,如何才能讓計算機讀懂英文?

1949年,赫柏加盟了第一台電子計算機發明人莫契利和艾科特創辦的公司,為世界上第一台儲存程序的商業電腦編寫了許多軟件,在這台計算機上,她開始嚐試著用簡短的指令代碼。

1952年,赫柏終於率先研製出世界上第一個編譯程序A—O,能夠將類似英語的符號代碼轉換成計算機能夠識別的機器指令。不要小看這個編譯程序,它有著電子詞典的翻譯功能,能夠將我們的語言翻譯給計算機。

翻譯器有了,但目前程序員敲打的符號代碼隻是類似英文,赫柏覺得有必要設計一套更簡單的機器語言。

5年後,Flow—matic語言問世了,這是第一個使用詞語的計算機語言。這個時候,政府也感覺到這將是一件造福國家的事兒,於是在五角大樓的支持下,赫柏領導著一個工作委員會。2年後,基於Flow語言,又成功研製出第一個商用編程語言COBOL。

 

 

這是赫柏發明前進的一小步,卻是人類計算機前進的一大步。

COBOL語言最重要的特征,就是語法都和英文接近了,不懂電腦的人也能看程序,編譯器軟件隻做少許修改,就能運行於任何類型的電腦。

不過,再好的程序員也都有出bug的時候,正因為COBOL語言逐漸的廣泛使用,赫柏當初的一個小bug成為了“危害巨大的千年蟲”。

50年代初,計算機非常昂貴,為了節省空間,赫柏采用六位數來儲存日期,即年月日各兩位,這一習慣被沿用,然而,到2000年,問題出現了。

簡單來說,2000年1月1日的表示是1/1/00,但是1900年1月1日的表示也是1/1/00,所以在進入千禧年時,因為計算機裏時間的錯誤,讓很多係統、軟件、程序完全亂套。

這些也是後話了。

盡管曾在很多公司供職,赫柏都是加盟、兼職,作為服役的軍人,她的大東家還是美國海軍部。

 

 

1966年,赫柏60歲,到了美國軍方服役的年齡上限。隻是回家才休息半年,赫柏就被召回了。因為她一走,美國海軍部就發現有大量他們無法處理的程序,他們為此趕快修改了原有規章,將退休年齡延長到65歲。

又工作了五年的赫柏於1971年“第二次退休”。這次比上次好,海軍部撐了一年,1972年,又把赫柏“召喚”了回來。

最後,眾議院特別批準讓赫柏延長服役年限,參與軍方計劃。所以,本該60歲退休的赫柏,直到1986年才終於“成功”退役,79歲的她成了美國退伍時年級最大的軍人。

 

 

退伍儀式中,赫柏被授予國防部傑出服務勳章,這是非戰鬥人員能獲得的最高獎項。

為表彰赫柏對美國海軍的貢獻,美國海軍將一艘驅逐艦命名為“格蕾絲號”,加利福尼亞數據處理中心,也改稱“赫柏服務中心”。

 

 

“格蕾絲號”

1992年1月1日,格蕾絲·赫柏與世長辭。

她將一生獻給工作,獻給國家,也獻給了人類。

Cobol語言目前仍被大範圍使用,世界上70%的數據都用它處理,500強中就有492家使用,據稱用它書寫的程序超過了2000億行,並且以每年大約50億行的速度在增長。

多少人因為她,才看懂了代碼,愛上了代碼,繼而在這個電子時代創造出一個個的進步與奇跡。

 

 

世界的腳步,伴著她,走向一個新的時代。

2016年,赫柏被奧巴馬追授總統自由勳章,這也是,這個國家的平民所能獲得的最高榮譽。

看看,憑啥說女性就是技術渣?這種氣質美貌才華兼具的女程序員照樣能讓人類顫抖!

 

——本文內容來自網絡

 

 

[ 打印 ]
閱讀 ()評論 (1)
評論
覓音 回複 悄悄話 有意思
登錄後才可評論.