C 语言 – 庄闲棋牌官网官方版 -199IT //www.otias-ub.com 发现数据的价值-199IT Thu, 12 Apr 2018 15:31:16 +0000 zh-CN hourly 1 https://wordpress.org/?v=5.4.2 StackOverflow :调查显示富裕国家流行 Python 和 C 语言 //www.otias-ub.com/archives/710603.html Thu, 12 Apr 2018 15:31:16 +0000 //www.otias-ub.com/?p=710603 在Stack Overflow,我们有志于使用我们的数据来分享有关全球软件开发社区的见解。最近发布的关于手机移动端开发者的帖子就是一个好例子:这篇帖文探索了世界各地访问Android相关问题的流量,发现低收入国家比高收入国家更经常使用Android系统。

这篇帖子使我们想知道富国和穷国之间的编程技术有何不同,以及这会如何影响我们对全球软件开发行业的看法。在本文中,我们将探讨这些差异,并证明在软件开发行业中,将高收入国家和世界其他地区区分看待,是有益的。

本文中探讨的所有分析都是在2017年1月至8月期间展开的,我们选择了那段时间流量最高的250个标签进行研究。为了减少其他不必要的影响,我们只分析了在这段时间内至少贡献了500万次问题访问量的64个国家。值得注意的是,这些数据代表了那些了解英语的开发者们的活动。一些针对西班牙语和葡萄牙语网站的分析表明,类似的趋势同样出现在非英语国家,比如墨西哥和巴西。

科技与人均GDP相关

在最近的一篇文章中,我们看到关于Android问题的流量(占一个国家Stack Overflow访问量的百分比)往往与一个国家的人均GDP呈负相关。 这不禁让我们怀疑,其他标签是否也有这样的相关性。

当我们搜索主要的编程语言和平台时,除了Android之外,还有一些也比较突出,包括PHP,Python和R.

标签流量vs人均GDP

流向Android和PHP的流量数与一个国家的人均收入水平呈负相关,而Python和R的话题流量则与国家人均收入水平呈正相关。但无论哪种情况,我们都可以看到有一些例外(韩国使用Android的人数比我们预期的要多,中国则更多人使用Python),但通常情况下,相关性的呈现还是比较明显的。 (在调整并进行多次测试之后,每个R^2值都在0.5-0.6之间,p值<10^-6)。

在此有必要强调一下,我们并不是要指出这当中必然存在的因果关系;也不是说选择哪种编程语言会影响一个国家的平均收入;也不是说一个国家的财富水平直接影响他们对科技的使用。我们怀疑造成这些相关性的原因可能由各种经济和社会因素混合而成的(比如,教育水平,软件行业的发展时间,外包水平),总的来说,这些因素通常都与一个国家的财富相关联。

我们如何将软件开发行业分为两部分?

当我们研究这种趋势时,把国家分为两组:高收入国家和非高收入国家,而不是把所有国家混在一起考虑。国家的财富水平,作为一种既有分类,我们可以引用世界银行的资料数据。下图显示的是按人均GNI(国民总收入)为标准,各国呈现出的不同财富水平。

世界银行发布的各国收入分类地图

图中共有78个高收入经济体,除了美国、加拿大,还有一些西欧国家,部分中东和东亚国家,以及澳大利亚/新西兰。我已经做过一些关于国家间差异的基本原因分析(如主要成分分析),证明这是一个合理的划分方法,并且这种划分方法比其他划分方法更有意义,例如按国家的地理位置,如东半球与西半球来归类国家。 例如,来自澳大利亚的用户所访问的科技标签,通常更接近美国和欧洲的访问情况,而不是中国或印度尼西亚的。

根据收入分类,排行Stack Overflow的流量主要来自哪些国家

这种区分方法将Stack Overflow流量分为三分之二和另外三分之一:Stack Overflow上63.7%流量来自高收入国家。 这可能是由于高收入国家软件开发量占全球比例更大,更多人口能享受互联网,以及英语用户数量较多的缘故。来自非高收入国家的大部分流量来自印度,其次是巴西,俄罗斯和中国。

高收入国家在使用的技术上有何不同?

我们现在将软件开发世界分为两部分。 高收入国家和非高收入国家在技术使用方面有何不同?

高收入国家和低收入国家在访问技术标签上的差异

我们从图中可以得出几个有趣的见解:

数据科学技术上的差异:正如我们前面看到的,Python和R与一个国家的收入呈正相关。在高收入国家,Python标签的访问频率是世界其他地区的两倍,而R标签的访问量大约是其他国家的三倍。我们也可能会注意到,在比较小众的标签中,许多科学领域的重大转变是由Python语言和R语言编写的,例如Panda,numpy,matplotlib和ggplot2。这说明,高收入国家更多人使用这两种语言可能是因为在高收入国家,科学技术和学术研究更受到重视。这就能够解释,为什么在较富裕的工业化国家这两种语言更为常见。往往在高收入国家中,科学研究占经济的比重较大,同时,这些国家的程序员更有可能具备高学历。

C/C ++:C/C ++是另外两种著名的编程语言,受到高收入国家的青睐。一个假设是,这可能与教育有关:正如我们在之前的文章中能看到的,C和C++语言尤其受到美国各大学的青睐。当然,这也可能与电子行业和制造业的全球地理分布有关。

PHP和Android:在之前的文章中,我们探讨了全球的Android开发,Android系统在较低收入国家更受欢迎。PHP是一种受较低收入国家显青睐的语言。 CodeIgniter是一个PHP开源框架,这个技术标签在低收入国家的访问量最大,远远超过来自其他国家的访问量,是一个访问量地域分布极不平衡的标签。 进一步的检查表明,这个标签在南亚/东南亚地区(特别是印度,印度尼西亚,巴基斯坦和菲律宾)的访问量特别大,而来自美国和欧洲的访问量就很少。 可能许多外包公司,在构建网站的时候,就常常会选择CodeIgniter。

结论:为什么做这种研究很有必要?

我当然对这些结果十分感兴趣, 因为我认为它们展示了编程语言生态系统中有趣的事实。 它们也将对我们在不久的将来会发布的其他数据研究,产生影响。

当我们提出有关软件开发行业的问题时,重要的是我们要明白,我们其实是“混合”着回答了两个分开的问题,因为软件开发行业本身,就是依据国家的收入水平,一分为二的。

知晓将这个行业一分为二的原因,则会给我们提供更多的信息。

例如,我们通常有兴趣了解哪些技术标签可以带来最多流量,例如查看Flash技术标签的人随着时间推移,逐渐减少。 如果我们要创建一个拥有最多访问次数的编程技术清单,那么高收入和低收入国家的清单将会非常不同:

根据国家收入排名人们最常访问的编程技术标签

例如,截止到2017年,Python是高收入国家中访问次数第二高的技术标签,但在世界的其他地区,它的访问量排名只能排到第八位。我学习的语言,R语言,是高收入国家中访问量排名第15的标签,但它的访问量在世界其他地区甚至没有进入前50。

当我们使用Stack Overflow上的数据来了解开发者生态时,我们很有必要了解软件开发中两个不同的世界,这是一条很重要的背景知识,意味着一位对这个行业的未来非常感兴趣的美国技术招聘人员,一个不确定要学习什么编程语言的印度学生,和一名想要了解肯尼亚科技公司的投资者,他们对于各种编程语言的看法,可能都会非常不同。

在未来的文章中,我们有时会回顾这一划分,这将有助于我们继续探索全球开发者生态。

原文链接:stackoverflow  编译来自:36kr

]]>
TIOBE :2013年4月TIOBE编程语言指数排行榜 //www.otias-ub.com/archives/104910.html Tue, 09 Apr 2013 16:10:50 +0000 //www.otias-ub.com/?p=104910 TIOBE 于近日公布了2013年4月TIOBE编程语言指数排行榜。此次前三位置有变化,C 语言第一,Java 第二,C++ 重返第三,Objective-C 降至第四了。在2009年夏季,Objective-C 还是一门鲜有人知、鲜有人用的编程语言。多亏了 iPhone 和 iPad 的成功,Objective-C 开始以难以置信的速度攀升到排行榜前几位。所以 Objective-C 在 2011 年和 2012 年连续两年荣获“TIOBE年度语言”奖项。不过最近  Objective-C 的热度不再上升了。这也是它从 2009 年开始,首次有排名下降,从第三位降至第四位。

2013年4月编程语言排行榜 Top 20 具体榜单:

2013年4月编程语言排行榜前10位的长期走势图:

2013年4月编程语言排行榜21至50位排名:

2013年之前的年度编程语言
TIOBE Software Tiobe Index Programming Language of the Year

【说明】:TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新。这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引擎(诸如 Google、 MSN 、雅虎)以及 Wikipedia 和 YouTube 进行计算。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。

这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开始开发新系统时选择语言时用来进行策略性的决策。

Tiobe原文:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
译文链接:http://blog.jobbole.com/37783/

]]>
TIOBE:2012年8月编程语言排行榜 //www.otias-ub.com/archives/62699.html Sun, 12 Aug 2012 15:00:30 +0000 //www.otias-ub.com/?p=62699 TIOBE 于11日公布了8月份编程语言排行榜,C 语言继5月份超过JAVA之后,已经占据榜单冠军之位4个月,而且份额还在继续再增加,展现出长期称霸的冠军像 。JAVA、C++的份额持续下滑,OBJECT-C 稳步上升,代表 IOS开发方兴未艾。PHP上个月下滑到第七位,这个月又回到第六位,与第七位的VB显得比较胶着。其他语言变化不大。


Object-C 占据探花位置已经第二个月,而且还在上升,代表iOS开发方兴未艾。软件开发经历了从C/S形式到B/S形式的转变,现在正在经历向移动端转移的趋势。包括Object-C、Android等越来越红火。

而C++的份额持续下滑,C++跨平台开发库Qt于7月被诺基亚正式售出给一家芬兰软件公司Digia,诺基亚和Digia均未透露交易金额。但分析师认为,成交价将远低于诺基亚2008年收购QT时付出的1.5亿美元。

前10名编程语言走势图

21-50编程语言排名:

数据来源:TIOBE

注:TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新。这份排行榜排名基于互联网上有经验的程序员、课程和第三方厂商的数量。排名使用著名的搜索引 擎(诸如Google、 MSN 、雅虎)以及Wikipedia和YouTube进行计算。请注意,这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门 语言所编写的代码数量多少。这个排行榜可以用来考查你的编程技能是否与时俱进,也可以在开始开发新系统时选择语言时用来进行策略性的决策。

]]>