TIOBE 每个月都会给编程语言排名,从侧面说明哪些编程语言使用比较广泛。那么你是否考虑过这些编程语言彼此之间的影响力呢?哪一门语言的影响力是最大的呢?显而 易见,大多数开发者都会认为他们的语言是最好的。如果你想要一个更科学的(或者艺术点的)视图,可以查看下面这幅编程语言影响图。
编程语言之间的影响力
下图是由Ramio Gómez实现,图中的每个节点代表1种编程语言,之间的连线代表该编程语言对其他语言有影响。看了它,你可能会问,为何Lisp比SQL更具影响力呢?
该图数据来自Freebase上的编程语言维护表里的数据,其包含的数据超过3900万个topic,2011种类型以及超过30000属性。Gómez利用这些数据创建了上面这幅交互式网络图片,来反映编程语言之间的影响力。
其中包含1184个编程语言节点和972种关系连线,每个节点表示一门编程语言,其中有影响力的语言会连线多个语言,相应的节点也会越大。从图中我们不难发现,节点较大的有Lisp、C、Java、Smalltalk、Pascal这几门语言。
该图所用的数据来源是Ramio Gómez通过Python对Freebase中的数据进行检索并生成的json和gexf格式文件,然后经过JavaScript库sigma.js渲 染,并使用Gephi虚拟化平台和Force Atlas 2对布局进行了预处理。
语言创始人之间的影响力
此外,Gómez还基于Google的搜索机制制作了一张迷人的曲线图,用来反映一些著名程序员之间是如何有关联的。根据GitHub上的种子资 源,Gómez找到了最受欢迎的编程语言的创建者名字,比如Brendan Eich (JavaScript)、James Gosling (Java)、Rasmus Lerdorf (PHP)、Dennis Ritchie (C)、Bjarne Stroustrup (C++)、Brad Cox (Objective-C)。如果搜索结果里面包含知识信息图,则表明这名程序员(或黑客、计算机科学家)可以作为一个节点。
同样道理,节点越大,影响力也就越大。Ramio Gómez已将该程序开源,源码托管在Github上。
原文链接:http://www.i-programmer.info/news/98-languages/6102-which-languages-have-most-influence.html