剑网3指尖江湖职业推荐 www.1468054.com

圖0:Erlang 之父去世,他留給程序員兩點忠告

北京時間 4月20日,據Erlang Solutions、Erlang Factories的創始人Francesco Cesarini的推特稱,Erlang之父Joe Armstrong于4月20日去世,享年68歲。

Francesco懷念道:“盡管他不在了,但他的工作已經打下的基礎,將對未來幾代人都有用的?!?br />

圖1:Erlang 之父去世,他留給程序員兩點忠告

Joe Armstrong 是誰?

1950年12月27日,Joe Armstrong出生于英國伯恩茅斯。

雖然Joe Armstrong 17歲時開始接觸到Fortran編程,但他從本科直到博士念的是物理學,后來因為積蓄用完無法完成學業,而轉向計算機科學。

后來為了謀生,他成為Donald Michie(英國人工智能領域奠基人之一)的研究員。在此期間,他撰寫了一些有關機器人視覺的論文。

后來政府削減了對人工智能的研究經費,Armstrong又回到了物理學領域,從事5年多與物理學編程相關的工作??際彼諗分薹竅喔繕⑸淇蒲?EISCAT)工作,后來又到了瑞典空間研究中心工作,協助開發應用程序系統。最后Armstrong加入愛立信計算機科學實驗室,在那發明Erlang,成為容錯系統開發領域的世界級專家。

并在2003 年,Armstrong獲得瑞典皇家工學院(KTH)的計算機科學博士學位,發表的博士論文《Making reliable distributed systems in the presence of software errors》對研究并發有不菲的參考價值。

在念本科時,Armstrong有件趣事:他那時已特別喜歡編程和善于調試程序。如果別人程序出了問題,他就會以一杯、兩杯、三杯啤酒的“收費”去幫助同學調試程序。

為什么他的貢獻如此重要?

Armstrong發明的Erlang在全球范圍內是個小眾語言,根據TIOBE發布的最新語言排行榜,Erlang排名第47位,市場份額占有僅為0.177%。它不是像Java、C++是面向對象語言的,它是函數編程語言。

早在1986年,Armstrong開始編寫Erlang,當時Erlang設計初衷針對的軟件是類似于電話交換機那樣的高可用性、高可靠性系統。并在1998年,Erlang作為開源項目發布。

當程序員們開始努力應對多核系統未來的發展趨勢時,并發性引起了他們的注意。而Erlang正是擁有強大的并行處理能力和容錯機制,并成就了可靠性達到99.9999999%的目前世界上最復雜的 ATM 交換機。

對于編程語言,Armstrong認為編程語言必須簡單好用,才能便于開發者去學。

老碼農的兩條忠告

圖2:Erlang 之父去世,他留給程序員兩點忠告

△Armstrong在SDCC 2016中國軟件開發者大會

Armstrong曾在CSDN主辦的“SDCC 2016中國軟件開發者大會”上,幽默地分享了他編程20年來對軟件開發的一些思考,他說:“人們總認為產品開發流程是這樣:Specify→Build→Test→Sell→$$$,然而實際上卻是這樣的:Start→???→Product”。

為什么他會這么說呢?

Armstrong曾在《編程人生》中分享過他在編程習慣上有了兩個改變,值得我們開發者借鑒。

第一:先思考再編程。

他在編程的20年都犯著一個錯:在年輕的時候,會不停地寫程序,直到完成。

等寫完后他會突然發現:“??!搞錯了!”等到重新編寫程序,會再次發現:“噢,程序是錯的?!庇謔怯種匭鹵嘈?。

他于是開始思考改變:“先不要動手寫代碼,把這些東西都想好,這樣做不是很好嗎?”

第二:不要在疲憊時寫代碼。

在年輕的時候,他會通宵地寫程序,例如一個小時接著一個小時不休息,不停地編寫代碼,一口氣寫到凌晨4點鐘。即使身體狀況不好他也堅持不懈,因為他要讓代碼能夠跑起來。

后來他發現程序員在疲憊的時候編寫的程序都是垃圾,第二天就要把它們廢棄掉。他認為真正好的代碼是程序員完全進入狀態的時候編寫,人甚至沒有在考慮程序,只是很放松地坐在那里,輸入代碼,這樣的代碼會很不錯。

他建議如果程序員覺得自己狀態不對,“不能再寫了?!蓖O呂?,干點別的。

在開發者大會上,Armstrong預言在未來二十年,所有與關鍵性能相關的軟件將與硬件相融合。

可惜Armstrong無法親自參與這當中來,我們僅在此感謝如此熱愛編程的Joe Armstrong,一生為編程所作出的貢獻。

余下全文(1/3)

本文最初發表在CSDN,文章內容屬作者個人觀點,不代表本站立場。

分享這篇文章:

請關注我們:

發表評論

電子郵件地址不會被公開。 必填項已用*標注