北京時間 4月20日,據(jù)Erlang Solutions、Erlang Factories的創(chuàng)始人Francesco Cesarini的推特稱,Erlang之父Joe Armstrong于4月20日去世,享年68歲。
Francesco懷念道:“盡管他不在了,但他的工作已經(jīng)打下的基礎(chǔ),將對未來幾代人都有用的?!?/p>
Joe Armstrong 是誰?
1950年12月27日,Joe Armstrong出生于英國伯恩茅斯。
雖然Joe Armstrong 17歲時開始接觸到Fortran編程,但他從本科直到博士念的是物理學,后來因為積蓄用完無法完成學業(yè),而轉(zhuǎn)向計算機科學。
后來為了謀生,他成為Donald Michie(英國人工智能領(lǐng)域奠基人之一)的研究員。在此期間,他撰寫了一些有關(guān)機器人視覺的論文。
后來政府削減了對人工智能的研究經(jīng)費,Armstrong又回到了物理學領(lǐng)域,從事5年多與物理學編程相關(guān)的工作。開始時他在歐洲非相干散射科學協(xié)會(EISCAT)工作,后來又到了瑞典空間研究中心工作,協(xié)助開發(fā)應用程序系統(tǒng)。最后Armstrong加入愛立信計算機科學實驗室,在那發(fā)明Erlang,成為容錯系統(tǒng)開發(fā)領(lǐng)域的世界級專家。
并在2003 年,Armstrong獲得瑞典皇家工學院(KTH)的計算機科學博士學位,發(fā)表的博士論文《Making reliable distributed systems in the presence of software errors》對研究并發(fā)有不菲的參考價值。
在念本科時,Armstrong有件趣事:他那時已特別喜歡編程和善于調(diào)試程序。如果別人程序出了問題,他就會以一杯、兩杯、三杯啤酒的“收費”去幫助同學調(diào)試程序。
為什么他的貢獻如此重要?
Armstrong發(fā)明的Erlang在全球范圍內(nèi)是個小眾語言,根據(jù)TIOBE發(fā)布的最新語言排行榜,Erlang排名第47位,市場份額占有僅為0.177%。它不是像Java、C++是面向?qū)ο笳Z言的,它是函數(shù)編程語言。
早在1986年,Armstrong開始編寫Erlang,當時Erlang設計初衷針對的軟件是類似于電話交換機那樣的高可用性、高可靠性系統(tǒng)。并在1998年,Erlang作為開源項目發(fā)布。
當程序員們開始努力應對多核系統(tǒng)未來的發(fā)展趨勢時,并發(fā)性引起了他們的注意。而Erlang正是擁有強大的并行處理能力和容錯機制,并成就了可靠性達到99.9999999%的目前世界上最復雜的 ATM 交換機。
對于編程語言,Armstrong認為編程語言必須簡單好用,才能便于開發(fā)者去學。
老碼農(nóng)的兩條忠告
Armstrong在SDCC 2016中國軟件開發(fā)者大會
Armstrong曾在CSDN主辦的“SDCC 2016中國軟件開發(fā)者大會”上,幽默地分享了他編程20年來對軟件開發(fā)的一些思考,他說:“人們總認為產(chǎn)品開發(fā)流程是這樣:Specify→Build→Test→Sell→$$$,然而實際上卻是這樣的:Start→??????????→Product”。
為什么他會這么說呢?
Armstrong曾在《編程人生》中分享過他在編程習慣上有了兩個改變,值得我們開發(fā)者借鑒。
第一:先思考再編程。
他在編程的20年都犯著一個錯:在年輕的時候,會不停地寫程序,直到完成。
等寫完后他會突然發(fā)現(xiàn):“??!搞錯了!”等到重新編寫程序,會再次發(fā)現(xiàn):“噢,程序是錯的。”于是又重新編寫。
他于是開始思考改變:“先不要動手寫代碼,把這些東西都想好,這樣做不是很好嗎?”
第二:不要在疲憊時寫代碼。
在年輕的時候,他會通宵地寫程序,例如一個小時接著一個小時不休息,不停地編寫代碼,一口氣寫到凌晨4點鐘。即使身體狀況不好他也堅持不懈,因為他要讓代碼能夠跑起來。
后來他發(fā)現(xiàn)程序員在疲憊的時候編寫的程序都是垃圾,第二天就要把它們廢棄掉。他認為真正好的代碼是程序員完全進入狀態(tài)的時候編寫,人甚至沒有在考慮程序,只是很放松地坐在那里,輸入代碼,這樣的代碼會很不錯。
他建議如果程序員覺得自己狀態(tài)不對,“不能再寫了?!蓖O聛?,干點別的。
在開發(fā)者大會上,Armstrong預言在未來二十年,所有與關(guān)鍵性能相關(guān)的軟件將與硬件相融合。
可惜Armstrong無法親自參與這當中來,我們僅在此感謝如此熱愛編程的Joe Armstrong,一生為編程所作出的貢獻。
-
編程語言
+關(guān)注
關(guān)注
10文章
1921瀏覽量
34506 -
人工智能
+關(guān)注
關(guān)注
1789文章
46350瀏覽量
236524 -
erlang
+關(guān)注
關(guān)注
0文章
16瀏覽量
5732
原文標題:Erlang之父去世,留給程序員兩點忠告!
文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論