就程式語言的相對重要性,如果要你來給評級,你會怎麼評?恐怖大多數開發者都會說,明顯就是“他們的”程式語言是最好的,並且是最重要的。如果你想從更為科學的角度看這個問題,那你就要來看看這張展示各程式語言直接關係的互動式圖。
程式語言影響力關係網
提示:下面這張截圖來自 Ramio Gómez 的『程式語言影響力關係網』,這個互動圖可以耗費你整天時間去探索,並會讓很多人會大聲發出驚歎,“怎麼 LISP 的影響力居然還超過了 SQL 啊?”
譯註:Ramio Gómez 是一位住在德國柏林的自由職業軟體工程師,他擅長Web開發、資料探勘和資料視覺化,在用Python (Django, Flask)、JavaScript (jQuery, D3)、Twitter Bootstrap、PostgreSQL、MySQL、 MongoDB 和 Redis。他的個人網站上有很多出色的專案。
『程式語言影響力關係網』的資料來自 Freebase 維護的程式語言表,該表包括 3900+ 萬主題,2011 種型別和超過 30,000 個properties。Ramio Gómez 利用這些資料製作了上面那個互動式關係網圖。該圖包括 1184 個程式語言節點,972條表示影響關係的線條。點選個節點,可呈現受其影響的其他語言。
每個節點代表一種語言,影響關係更多的語言,其節點在關係網中也越大。我們能看到的幾個大節點有:Lisp、C、Smalltalk、Java、Pascal、C++、Scheme、Haskell 等。
互動圖用到的技術
- 資料獲取:Python 程式碼從 Freebase 取資料,並生成 json 和 gexf 檔案(程式碼已託管在 Github)
- 網路分析:Gephi (Gephi 是一個用 Java 開發的網路分析和視覺化的工具)
- Presentation: jQuery、 Bootstrap、 定製的 CSS
- 視覺化:D3.js、 sigma.js、 openstreetmap
程式設計師搜尋關係網
基於 Google 的知識圖譜(比如我在 Google 中搜尋 James Gosling ,搜尋結果頁右側還會展現“其他使用者還搜尋了”丹尼斯·裡奇“。Ramio Gómez 還做了一個『程式設計師搜尋關係網』。
Github 上有個熱門語言排行榜,Gómez 把這些語言之父的名字作為關係網圖的”種子“。被當作”種子“資源的語言之父有:Brendan Eich (JavaScript)、Yukihiro Matsumoto (Ruby)、James Gosling (Java)、Guido van Rossum (Python)、Stephen R. Bourne (Bourne shell)、William Nelson Joy (C shell)、Rasmus Lerdorf (PHP)、Dennis Ritchie (C)、Bjarne Stroustrup (C++)、Larry Wall (Perl) 和 Brad Cox (Objective-C)。
如果在Google搜尋結果頁中有知識圖譜資訊,則表明這個人是可以作為一個節點的程式設計師(或黑客或電腦科學家)。
打賞支援我翻譯更多好文章,謝謝!
打賞譯者
打賞支援我翻譯更多好文章,謝謝!
任選一種支付方式