哪種編程語言的影響力最大?
就編程語言的相對重要性,如果要你來給評級,你會怎么評?恐怖大多數開發者都會說,明顯就是“他們的”編程語言是最好的,并且是最重要的。如果你想從更為科學的角度看這個問題,那你就要來看看這張展示各編程語言直接關系的交互式圖。
編程語言影響力關系網
提示:下面這張截圖來自 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搜索結果頁中有知識圖譜信息,則表明這個人是可以作為一個節點的程序員(或黑客或計算機科學家)。
原文鏈接: i-programmer 翻譯: 伯樂在線 - 黃利民