地球程序員之神

很多人認爲程序員應該供的神裏面排名第一的應該是Linus Torvalds,因爲他是Linux和Git之父。

 

然而我要試圖反駁這個觀點,因爲地球上有另外一位偉大的程序員,有超過四代碼農用他的開發工具吃飯。

 

Linus只用C編程而且不到30年,而這位神級程序員在近40年中一直創造引領潮流的開發工具(Turbo Pascal/Delphi/C#/TypeScript),他就是Anders Hejlsberg。

 

一、

 

Anders並沒有大學文憑,但這絲毫不重要。當年微軟Server部門負責人Bob Muglia認爲,地球上只有幾個人可以做出偉大的開發工具架構,Anders還是其中那個最棒的,頂尖中的頂尖。

 

當時,Anders在微軟的競爭對手Borland工作。微軟試圖挖了他一年,但都被婉拒。

 

比爾蓋茨打電話給Anders,說我可以做什麼才能讓你來。Anders後來回憶說,那是他人生特別尷尬的一個時刻。他已經財務自由,只想做自己熱愛的事。

 

1996年,Anders和Borland高層有些意見分歧,微軟趁機開出每年300萬美元的高額待遇,更重要的是許諾他可以享有充分的協作資源,終於把這位英雄招至麾下。從後來的貢獻看,也許3000萬請到Anders,也不會虧。

 

 

二、

 

Anders是1960年出生在丹麥,父親是摩托羅拉的工程師,典型的科技家庭。Anders在上中學時就開始編程,他回憶說那時用的HP2100還是紙帶編程。上大學時有個高年級學生喜歡玩Mousehole紙牌遊戲,但是老輸錢給Anders,覺得他很牛,就請他合夥一個小公司叫Polydata。

 

Anders有臺Z80,這電腦只有4Mhz CPU和32K內存,上面有微軟Basic。結果Anders玩了一天就玩膩了,隨後開始玩彙編。大神在20歲就顯露了神蹟,他兩三個星期就寫出了Pascal編譯器,並賣給了一個英國公司。然後大神就輟學了,並在多個平臺包括DOS上重寫了Pascal編譯器。

 

1983年,當時Borland還是個丹麥公司,自己做編譯器做得很爛,找到Anders買了他的編譯器並整合成Turbo Pascal。微軟CTO在一次節目中說,這應該是PC上面第一個真正的集成開發環境(IDE),但Anders很謙虛地說他不知道。

 

(Turbo Pascal截圖,好喜歡這個begin...end)

 

當時Anders並未加入Borland,因爲Borland後來搬到硅谷去了。Anders選擇遠程服務,因爲當時並沒有互聯網也沒有email,當時寄代碼都是靠聯邦快遞。

 

1989年,Anders自己的公司Polydata經營不太好,加上女友很嚮往去美國,他就決定去美國加入Borland。

 

三、

 

Borland當然喜出望外,任命Anders爲首席程序員。在Turbo Pascal成功後,Borland又發佈了Turbo C,從而揚名天下。中國第一代程序員好像都是用Turbo C的,包括偉大的王小波同志。

 

而Anders的主要任務,是祕密開發可視化環境的超級IDE:Delphi。當時微軟已經推出自己的Visual Basic大獲好評,但一碰到直接編譯二進制EXE的Delphi立刻被秒成渣渣。

 

Delphi使用Object Pascal,語言設計極其優雅,完美面向對象,完美結合數據庫,而且可以直接操控操作系統(硬件和網絡等),應該說開發Windows原生程序堪稱完美。有意思的是,Delphi上面的VCL和RTL庫都是用Delphi自己開發自己的,自帶的源代碼可以讓程序員學習真正高手是怎麼編程的。

Delphi 2截圖

 

當年國內大量著名程序都使用了Delphi,包括張小龍的Foxmail和雷軍的WPS。

 

後來著名的Borland C++也被直接移植架在Delphi上,這就是C++ Builder。

 

這時我似乎聽到蓋茨在嘆息,我非得此人不可。

 

四、

 

Anders加入微軟時,正是互聯網風起雲涌之時。Sun剛發佈了跨平臺可以到處運行的Java,微軟感覺生態受到嚴重威脅,抓緊開發Visual J++和WFC,Anders成了主導人物。VJ++很快成爲世界上最快的Java編譯器,並支持ActiveX等微軟生態產品。

 

Sun發現微軟不用自己的Java虛擬機,搞出個更快的東西。他們深深憂慮被微軟分裂了Java,所以果斷起訴了微軟。結果微軟敗訴,被迫在VJ++頁面承認和Sun Java不兼容,導致了VJ++的最終失敗。

 

Anders第一次碰到自己的產品不是因爲性能問題而失敗,他承認自己有點天真了。短暫沮喪之後立刻恢復了大神本色:我們微軟要自己搞一套和Java競爭的平臺。

 

這就是2000年發佈的C#和.net平臺。Anders設計的C#也是優美的面向對象速度也經常快於Java。十幾年過去,C#依舊是互聯網開發的主力語言之一。

 

Logo版權:微軟

 

 

五、

 

近年來開源軟件風起雲涌,PHP/Python/Ruby/Swift等熱度高升,年輕人都不記得Anders這個大叔了。結果在大家最意想不到的地方,大神再次亮劍。

 

JavaScript(JS)是互聯網使用最多的腳本語言,而這個原本不該是Anders的強項,因爲他是搞高大上的機器碼編譯器而不是低級的腳本的。然而,Anders再次推出TypeScript震撼了程序圈。

 

TypeScript是編譯輸出JavaScript的工具,也是JS的超集。它不僅可以輸出客戶端的JS,還可以輸出服務端大熱的Node.js。TypeScript大大提高了程序員寫JS的效率和降低了差錯的概率。

 

更難能可貴的是,作爲頂級Geek,Anders積極擁抱開源社區,推動微軟從封閉走向開放。TypeScript就是微軟最早的開源產品之一。納德拉上臺後,Anders更是促成Visual Studio免費的重要推手,這個開發套件了包括了C#和TypeScript。

 

六、

 

在很多新興語言變得越來越臃腫複雜的當下,程序員們怎麼評價Anders的作品呢:有品味,優雅,簡潔。Anders說,這是因爲他對編程充滿了熱情。

 

年近60的Anders今天仍舊在寫程序,他說一旦停止寫代碼後,就會膨脹飛起來,忘了程序員真正需要什麼。我們現在還能看到他每個月在Github提交的代碼。

 

(github 截圖)

 

我自己在90年代用過Delphi,排第一肯定有偏心的成分。特以此文致敬我心目中最偉大的程序員:Anders Hejlsberg。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章