所謂程序員,是指那些能夠創造、編寫計算機程序的人。不論一個人是什么樣的程序員,或多或少,他都在為我們這個社會貢獻著什么東西。然而,有些程序員的貢獻卻超過了一個普通人一輩子能奉獻的力量。這些程序員是先驅,受人尊重,他們貢獻的東西改變了我們人類的整個文明進程。下面就讓我們看看人類歷史上偉大的12位程序員。
1、第一位計算機程序員:埃達·洛夫萊斯 Ada Lovelace
埃達·洛夫萊斯,原名奧古斯塔·埃達·拜倫,是著名英國詩人拜倫之女。數學愛好者,被后人公認為第一位計算機程序員。
在1842年與1843年期間,埃達花了9個月的時間翻譯意大利數學家路易吉·米那比亞講述查爾斯·巴貝奇計算機分析機的論文。在譯文后面,她增加了許多注記,詳細說明用該機器計算伯努利數的方法,被認為是世界上第一個計算機程序;因此,埃達也被認為是世界上第一位程序員。不過,有傳記作者也因為部份的程序是由巴貝奇本人所撰,而質疑埃達在電腦程序上的原創性。
埃達的文章創造出許多巴貝奇也未曾提到的新構想,比如埃達曾經預言道:‘這個機器未來可以用來排版、編曲或是各種更復雜的用途。’
1852年,埃達為了治療子宮頸癌,卻因此死于失血過多,年僅36歲。她死后一百年,于1953年,埃達之前對查爾斯·巴貝奇的《分析機概論》所留下的筆記被重新公布,并被認為對現代計算機與軟件工程造成了重大影響。
2、Pascal之父:尼克勞斯·維爾特 Niklaus Wirth
尼克勞斯·埃米爾·維爾特,生于瑞士溫特圖爾,是瑞士計算機科學家。
從1963年到1967年,他成為斯坦福大學的計算機科學部助理教授,之后又在蘇黎世大學擔當相同的職位。1968年,他成為蘇黎世聯邦理工學院的信息學教授,又往施樂帕洛阿爾托研究中心進修了兩年。
他是好幾種編程語言的主設計師,包括 Algol W,Modula,Pascal,Modula-2,Oberon等。
他亦是Euler語言的發明者之一。1984年他因發展了這些語言而獲圖靈獎。他亦是Lilith電腦和Oberon系統的設計和運行隊伍的重要成員。
他的文章Program Development by Stepwise Refinement視為軟件工程中的經典之作。他寫的一本書的書名Algorithms + Data Structures = Programs(算法+數據結構=程序)是計算機科學的名句。
3、微軟創始人:比爾·蓋茨 Bill Gates
威廉·亨利·"比爾"·蓋茨三世,是一名美國著名企業家、投資者、軟件工程師、慈善家。早年,他與保羅·艾倫一起創建了微軟公司,曾任微軟董事長、CEO和首席軟件設計師,并持有公司超過8%的普通股,也是公司最大的個人股東。
4、Java之父:詹姆斯·高斯林 James Gosling
詹姆斯·高斯林,出生于加拿大,軟件專家,Java編程語言的共同創始人之一,一般公認他為“Java之父”。
在他12歲的時候,他已能設計電子游戲機,幫忙鄰居修理收割機。大學時期在天文系擔任程式開發工讀生,1977年獲得了加拿大卡爾加里大學計算機科學學士學位。1981年開發在Unix上運行的Emacs類編輯器Gosling Emacs(以C語言編寫,使用Mocklisp作為擴展語言)。1983年獲得了美國卡內基梅隆大學計算機科學博士學位,博士論文的題目是:"The Algebraic Manipulation of Constraints"。畢業后到IBM工作,設計IBM第一代工作站NeWS系統,但不受重視。后來轉至Sun公司。1990年,與Patrick Naughton和Mike Sheridan等人合作“綠色計劃”,后來發展一套語言叫做“Oak”,后改名為Java。1994年底,James Gosling在硅谷召開的“技術、教育和設計大會”上展示Java程式。2000年,Java成為世界上最流行的電腦語言。
5、Python之父:吉多·范羅蘇姆 Guido van Rossum
吉多·范羅蘇姆是一名荷蘭計算機程序員,他作為Python程序設計語言的作者而為人們熟知。在Python社區,吉多·范羅蘇姆被人們認為是“仁慈的獨裁者(BDFL)”,意思是他仍然關注Python的開發進程,并在必要的時刻做出決定。
2002年,在比利時布魯塞爾舉辦的自由及開源軟件開發者歐洲會議上,吉多·范羅蘇姆獲得了由自由軟件基金會頒發的2001年自由軟件進步獎。2003年五月,吉多獲得了荷蘭UNIX用戶小組獎。2006年,他被美國計算機協會(ACM)認定為著名工程師。
6、B語言、C語言和Unix創始人:肯·湯普遜 Ken Thompson
肯尼斯·藍·湯普遜,小名為肯·湯普遜,生于美國新奧爾良,計算機科學學者與軟件工程師。他與丹尼斯·里奇設計了B語言、C語言,創建了Unix和Plan 9操作系統,他也是編程語言Go的共同作者。與丹尼斯·里奇同為1983年圖靈獎得主。
肯·湯普遜的貢獻還包括了發展正規表示法,寫作了早期的電腦文字編輯器QED與ed,定義UTF-8編碼,以及發展電腦象棋。
7、現代計算機科學先驅:高德納 Donald Knuth
唐納德·爾文·克努斯,出生于美國密爾沃基,著名計算機科學家,斯坦福大學計算機系榮譽退休教授。高德納教授為現代計算機科學的先驅人物,創造了算法分析的領域,在數個理論計算機科學的分支做出基石一般的貢獻。在計算機科學及數學領域發表了多部具廣泛影響的論文和著作。1974年圖靈獎得主。
高德納最為人知的事跡是,他是《計算機程序設計藝術》(The Art of Computer Programming)的作者。此書是計算機科學界最受高度敬重的參考書籍之一。此外還是排版軟件TEX和字體設計系統Metafont的發明人。提出文學編程的概念,并創造了WEB與CWEB軟件,作為文學編程開發工具。
8、《C程序設計語言》的作者:布萊恩·柯林漢 Brian Kernighan
布萊恩·威爾森·柯林漢,生于加拿大多倫多,加拿大計算機科學家,曾服務于貝爾實驗室,為普林斯頓大學教授。他曾參與Unix的研發,也是AMPL與AWK的共同創造者之一。
與丹尼斯·里奇共同寫作了C語言的第一本著作《C程序設計語言》之后,他的名字開始為人所熟知。他也創作了許多Unix上的程式,包括在Version 7 Unix上的 ditroff 與 cron。
9、互聯網之父:蒂姆·伯納斯-李 Tim Berners-Lee
蒂莫西·約翰·伯納斯-李爵士,昵稱為蒂姆·伯納斯-李(Tim Berners-Lee),英國計算機科學家。他是萬維網的發明者,麻省理工學院教授。1990年12月25日,羅伯特·卡里奧在CERN和他一起成功通過Internet實現了HTTP代理與服務器的第一次通訊。
伯納斯-李為關注萬維網發展而創辦的組織,萬維網聯盟的主席。他也是萬維網基金會的創辦人。伯納斯-李還是麻省理工學院計算機科學及人工智能實驗室創辦主席及高級研究員。同時,伯納斯-李是網頁科學研究倡議會的總監。最后,他是麻省理工學院集體智能中心咨詢委員會成員。
2004年,英女皇伊麗莎白二世向伯納斯-李頒發大英帝國爵級司令勛章。2009年4月,他獲選為美國國家科學院外籍院士。在2012年夏季奧林匹克運動會開幕典禮上,他獲得了“萬維網發明者”的美譽。伯納斯-李本人也參與了開幕典禮,在一臺NeXT計算機前工作。他在Twitter上發表消息說:“這是給所有人的”,體育館內的LCD光管隨即顯示出文字來。
10、C++之父:比雅尼·斯特勞斯特魯普 Bjarne Stroustrup
比雅尼·斯特勞斯特魯普,生于丹麥奧胡斯郡,計算機科學家,德州農工大學工程學院的計算機科學首席教授。他以創造C++編程語言而聞名,被稱為“C++之父”。
用斯特勞斯特魯普他本人的話來說,自己“發明了C++,寫下了它的早期定義并做出了首個實現……選擇制定了C++的設計標準,設計了C++主要的輔助支持環境,而且負責處理C++標準委員會的擴展提案。”他還寫了一本《C++程序設計語言》,它被許多人認為是C++的范本經典,目前是第四版(于2013年5月19日出版),最新版中囊括了C++11所引進的一些新特性。
11、Linux之父:林納斯·托瓦茲 Linus Torvalds
林納斯·本納第克特·托瓦茲,生于芬蘭赫爾辛基市,擁有美國國籍。他是Linux內核的最早作者,隨后發起了這個開源項目,擔任Linux內核的首要架構師與項目協調者,是當今世界最著名的電腦程序員、黑客之一。他還發起了Git這個開源項目,并為主要的開發者。
林納斯在網上郵件列表中也以火暴的脾氣著稱。例如,有一次與人爭論Git為何不使用C++開發時與對方用“放屁”(原文為“bullshit”)互罵。他更曾以“一群自慰的猴子”(原文為“OpenBSD crowd is a bunch of masturbating monkeys”)來稱呼OpenBSD團隊。
2012年6月14日,托瓦茲在出席芬蘭的阿爾托大學所主辦的一次活動時稱Nvidia是他所接觸過的“最爛的公司”( the worst company)和 “最麻煩的公司”(the worst trouble spot),因為Nvidia一直沒有針對Linux平臺發布任何官方的Optimus支持,隨后托瓦茲當眾對著鏡頭豎起了中指,說“ Nvidia,操你的! ”(So, Nvidia, fuck you!)。
12、C語言和Unix之父:丹尼斯·里奇 Dennis Ritchie
丹尼斯·麥卡利斯泰爾·里奇,生于美國紐約州布朗克斯維爾(Bronxville),著名的美國計算機科學家,對C語言和其他編程語言、Multics和Unix等操作系統的發展做出了巨大貢獻。在技術討論中,他常被稱為dmr,這是他在貝爾實驗室的用戶名稱(username)。
丹尼斯·里奇與肯·湯普遜兩人開發了C語言,并隨后以之開發出了Unix操作系統,而C語言和Unix在電腦工業史上都占有重要的地位:C語言至今在開發軟件和操作系統時依然是非常常用,且它對許多現代的編程語言(如C++、C#、Objective-C、Java和JavaScript)也有著重大影響;而在操作系統方面Unix也影響深遠,今天市場上有許多操作系統是基于Unix衍生而來(如AIX與System V等),同時也有不少系統(通稱類Unix系統)借鑒了Unix的設計思想(如Solaris、Mac OS X、BSD、Minix與Linux等),甚至以Microsoft Windows操作系統與Unix相競爭的微軟也為他們的用戶和開發者提供了與Unix相容的工具和C語言編譯器。
若有不同意見,歡迎留言交流!