哪個程式語言最先死:Python 只剩 25 年可活,C 語言卻可以活到 2062?

在開始之前必須先跟各位讀者解釋一下什麼叫做林迪效應(Lindy Effect),意思是對易損的東西來說,每多活一天,都會縮短其壽命;相反的,對於不易損的東西來說,每多活一天,都將更拉長其存在壽命。

舉個例子來說,在書籍領域,已經存在超過一整個世紀的書籍,持續時間將會越來越長,下個世紀依然仍看到它的存在。不過,對於新出版的書籍來說,它所存在的持續時間只會越來越短,最後終將消失在人們的眼中。

《哈姆雷特》相信在下個世紀依然會受到廣大的閱讀,不過,《哈利波特》可能不一定能存在超過數個世紀。

(哈利粉不要討厭我,我只是找個哈開頭的來舉例子。)

好了,科普完成後,直接進入主題,如果將林迪效應拿來放在「程式語言」上呢?

哪個程式語言能夠存在最久?

根據國外顧問機構的預測(儘管日期只是推估),新潮的 Go 在 8 年後就會消失、Java 則可以活到 2039 年、Python 則可以活得稍長一點到 2043 年,最常被人詬病的 C 還可以繼續活到 2062 年。

而 Lisp 跟 Fortran 則還有 50 年以上的壽命可以存活。

到底什麼是 Fortran 啦?

Fortran 是 Formula Translation 的縮寫,於 1957 年 IBM 開發公布,是世界第一個正式被採用,並流傳至今的高階程式語言。

而史上第一支 Fortran 程式,則遭遇了許多工程師都遭遇過的問題:

當一位 IBM 軟體工程師在電廠內編譯第一支 Fortran 程式,當程式碼輸入後,經過編譯,印表機列出一行訊息:「原始程式錯誤 …… 右側括號後面沒有逗號」。

不過當然後續也發展得不錯,Fortran 也一口氣更迭了好幾代,一直持續更新到 Fortran 2008。

而 Tony Hoare,圖靈獎得主,曾開發著名演算法 Quicksort,也說過一句名言:

我不知道 2100 年會用什麼程式語言,不過我知道 Fortran 還會繼續活著。

這些能持續活上好一大段時間的程式語言,不一定是「好」的程式語言,而是生活中有太多東西是基於它們所製作而成,導入新的程式語言替換所需的成本又太高,才讓它們可以持續活著。

Python 只能活到 2043 年那我學幹嗎?

而如上所述,Python 只能活到 2043 年?

我自己是不相信啦,也許會換個形式存在,不過可能不會完全消失。林迪效應只是一個小指標,提供給工程師另外一片戰場,能夠為了自己所喜愛的程式語言再次大戰一場。

要學什麼語言?仍要看未來產業所需,以及「你自己到底想幹什麼」。舉 Python 為例,如果想要做資料處理,Python 仍有其優勢所在,甚至在網頁領域 Django 也有許多擁護者。先問自己想做什麼,最後再來找適合的工具。

最後附上一些自學程式的網站,期望大家的「工程師夢」都能順利完成。

Udacity:適合有英聽基礎的讀者,除了程式設計之外還有許多課程能夠參與。甚至有短期女工透過 Udacity 自學成為無人車工程師的超猛案例。

Codecademy:老牌的程式學習網站,需要一點看英文的能力,不過都滿簡單的。課程也很豐富,從 Python、SQL 到 PHP 等都有。

w3c School:關於網頁的各種程式碼教學,有中文。

Tree House:也是老牌的程式學習網站了,以影片的形式呈現,已付費為準,不過可以透過註冊拿到的免費帳號體驗一下。

——

參考資料來源》

John D. Cook: Programming language life expectancyWiki1、Wiki2。圖片來源:Daniel Iversen, CC Licensed

延伸閱讀

紐約 coding 學院打出「找到工作再付學費」專案,學費 45 萬台幣你敢試嗎?
C 語言已死?想取代資安漏洞寬如海溝的 C,你該用這個語言
2017 年程式語言最佳有潛力獎:Go、Dart 與 Perl,你認識幾種呢?

AD