2009 (364)
2010 (272)
2011 (195)
2012 (205)
2013 (210)
2014 (155)
2015 (172)
2017 (152)
2018 (173)
2020 (549)
2021 (413)
2022 (545)
2023 (331)
(拖到後麵看格雷絲 赫柏的人生傳奇)
對萬千程序猿來說,在這個世界上如果有比寫程序更痛苦的事情,那一定是親手找出自己編寫的程序中的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年,赫柏被奧巴馬追授總統自由勳章,這也是,這個國家的平民所能獲得的最高榮譽。
看看,憑啥說女性就是技術渣?這種氣質美貌才華兼具的女程序員照樣能讓人類顫抖!
——本文內容來自網絡