选自GlobalAppTesting
作者:NickRoberts
机器之心编译
参与:杜伟、戴一鸣
自年创办以来,StackOverflow致力于为所有类型的开发者提供帮助,开发者们也提出了涵盖所有开发领域的大量问题。但是,哪些问题是开发者不得不向StackOverflow寻求解决的呢?本文作者通过对十一年来人们在StackOverflow上提问进行了词云统计,通过错误提问和解决遍览编程语言发展历程。
01:27在本文中,作者选择了11种最流行的编程语言(通过StackOverflow标签出现的频率衡量),希望可以找出这些问题的共性及差异性。
首先观察以下选择的11种编程语言:
作者选择的11种编程语言,包括JavaScript、Java、C#、Python等。
就开发者提出的原始问题数量来说,自StackOverflow创办以来,JavaScript相关问题被询问得频率最高,这或许是因为它普遍存在于各种不同类型的应用和服务中:无论开发者从事哪种互联网工作,都需要了解一些JavaScript知识。
虽然整体来看JavaScript相关问题排名第一,但是随着时间的迁移,可以看到头名出现了变化。
年,《哈佛商业评论》将数据科学家成为「21世界最性感的工作」。自那以后,Python成为数据科学家的首选编程语言,使用量也日益增长。年,Python超越JavaScript成为了StackOverflow上被提问最多的编程语言。
所以,Python语言要么正在快速成为最受欢迎的编程语言,要么与其他编程语言相比,新程序员使用Python的比例较高。
从前面的视频来看,年开始,C#一直占据着StackOverflow最受欢迎的编程语言榜首,而此时Python、Java和JavaScript还并不火热。但是从年开始,Python超越C++,开始一路逆袭。同时,JavaScript的用户比例逐渐上升。最终,在年年底,Python和JavaScript分别成为了榜单榜首和第二名。
但这些开发者具体都问些什么问题呢?提问最多的框架、程序包、函数和方法是什么呢?哪些数据类型给开发者带来最多的困扰呢?这些问题在不同编程语言中又有哪些不同呢?
为了得出结果,作者做了以下工作:
1.分别提取11种编程语言在StackOverflow上的个点赞最高的问题;
2.在Python中进行数据清洗(pandas工具);
3.将总计1个问题(超过个单词)馈入到JavaScript词云算法中,从而得出显示不同编程语言中通常痛点的鸟瞰透视图。
结果如下所示(按编程语言):
JavaScript
JavaScript已经有23年的历史,而StackOverflow的创办时间仅11年。在过去的11年里,「jquery」(上图中左)成为被问最频繁的JavaScript框架问题。
Python
Python实际上比JavaScript早六年提出。在年提出Python后,GuidovanRossum(