GitHub刚被微软收购,7年1500万账户数据就“被爆”了

作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。数据侠Ben Frederickson突发奇想,想统计一下全球的程序猿都住在哪里,于是他爬取了Github,并得出了自己的结论~今天就让我们一起来围观一下数据侠Ben Frederickson的研究吧~

本文转自Bit Tiger(ID:bit_tiger)

最近突发奇想,想统计一下全球程序猿都住在哪里,所以就爬了GitHub,将GitHub上的个人资料聚合在一起,结合国家或城市的人口进行分析并将数据用D3进行可视化。

通过分析,发现了一些有趣的结果。比如虽然顶尖程序猿都生活在世界各地,但他们中的很多人似乎都生活在旧金山湾区这个保育区。同时,在印度顶尖开发者属于濒危物种,而东欧有用大量可以远程雇佣的程序猿。

▍数据采集

首先,我通过GitHubArchive获取过去7年中活跃的GitHub用户列表,活跃的定义是fork或者关注一个repository,查看或者评论一个问题,或者提交代码等,应该有1500万用户符合这个标准。过去几个月我一直致力于通过GitHub/users/API获取每个活跃用户的基本信息,结果是这些用户中有230万用户可以获取到坐标信息。虽然很多用户没法获得坐标信息,但就已有的数据来分析,应该也能说明一些问题了。

然后,我通过Google Maps Geocoding API把这些凌乱的坐标串转换成真实的坐标。期间手动调整了几个地理编码错误,比如TheFuture被编码到帕洛阿尔托,World Wide Web被编码到波士顿,还有/dev/random被编码到印度。除开这些无关紧要的差错,GoogleMaps确实在转换过程中起到了巨大作用。

最后,我把所有的代码上传到了GitHub(获取作者GitHub网址,请关注DT数据侠微信公众号,后台回复“网址”即可获取)。

▍顶尖程序猿

我们把目光着眼于关注者人数最高的顶尖程序猿,可以将地理编码地点和地图上进行结合。

首先我们凑个整,显示排名前1024开发人员,数据量并不是太大,所以它们不会完全重叠,并且可以看到所有这些开发人员的居住地点:

如果你说只有1024个程序猿,可能样本量不够,那再翻几番看看:

尽管顶尖程序猿的栖息地遍布全球,但很显然他们主要集中在多个区域。显而易见旧金山湾区是最集中的,但在北京,上海,纽约,伦敦和西雅图等地也颇为集中。

▍顶尖程序猿集中的国家

前面关注了顶尖程序猿而忽略了广大的普通程序猿,这一部分来看看汇总了普通的账户分别主要来自那几个国家。

换个更加直观方式再来看一下,颜色越深,说明GitHub用户越多:

从用户数量角度看,美国在排名上占主导地位:它拥有最多的GitHub账户,比其后5个国家加起来还多。但是,这不是对每个国家进行排名的唯一方式。本报告还列出了另外3种不同的排名方式,我接下来来谈谈为什么要用这些指标。

▍与人口或者GDP的关系

有个比较容易发现的事情就是GitHub账户多的国家通常都是人口众多的国家。虽然美国无疑是技术超级大国,但它也是地球上人口最多的国家之一。

举个例子,美国的GitHub账户数量比冰岛拥有的人多,因此在按GitHub账户数量排名时,无法指望冰岛能追上美国。但是,如果将排名方式切换到按照GitHub账户数每百万人口排序,冰岛一下跃居第一名。

通过散点图可以看到:

双对数回归的趋势线以橙色显示,其R²为0.5,也就是说,每个国家的GitHub账户数量中有一半的差异可以用人口来解释。图中我已经将偏离帕累托边界(Pareto frontier)较多国家作为离群值标记出来。

明显高于趋势线的国家主要是西方国家,如冰岛(IS),瑞典(SE),挪威(NO)和丹麦(DK)。明显低于趋势线的国家往往是比较贫穷的非洲国家,如埃塞俄比亚(ET),刚果(CG)和乍得(TD)。

查看按照“账户/百万人口”的排名就可以从某种程度上看起来接近衡量每个国家富裕程度的排序。

既然把人口因素放入GitHub账户的排名,那是不是也能将GitHub账户与GDP进行组合:

同样是双对数回归,当R²为0.84时,这里的相关性更强。

这里表现最差的主要是石油生产国,如沙特阿拉伯(SA),伊拉克(IQ),卡塔尔(QA)和科威特(KW)。这似乎与“荷兰病”有关,在这种情况下,自然资源丰富导致国家更加注重资源的出口,而对软件工程师这样的人力资本投资不足。

同时,前苏联国家的排名似乎在这个衡量标准中排名很高。乌克兰(UA),白俄罗斯(BY),塞尔维亚(RS)和摩尔多瓦(MD)的GitHub账户都比它们各自的国内生产总值对应的数量的要多。尤其乌克兰的程序猿是远程开发人员的最佳选择,也许继承了前苏联的优秀的教育底子,使乌克兰拥有大量开发人才。

▍关注者分布

印度和中国都有相差不多的GitHub账户数量,一般来说你可以预期这两个国家对GitHub有类似的贡献。然而,看一下顶尖程序猿和各自的地图,在北京,上海和深圳周围有大量的开发者,而印度只有少数几个开发者分散在各大城市。

虽然中国(13亿)和印度(10亿)有同一个量级的人口,但顶尖程序猿中有22%生活在中国,而只有不到1%居住在印度。同样,一个中国的顶尖程序猿最多拥有3.9万关注者,排在全球第三,而一个印度的顶尖程序猿最多只有3100多个关注者,只能排到200位。

为了体现这种情况,我添加了一个简单的“总体关注者”排名,该排名仅对每个国家/地区的关注者总数排序。印度在这一排名中从第3位下降到第8位(中国的关注者总人数约为印度的5.5倍)。

我不清楚为什么印度在这里表现不佳,我也曾怀疑一个账户在GitHub上的关注人数是否特别有意义。但是,GitHub上一个账户的关注人数从一定程度上说明这个用户对开源软件开发的影响力,所以我将其作为影响力的排名。

▍重要城市

只关注重点国家的粒度太粗了,大多数发达国家的城乡差别比这些国家之间的差异更为明显。按照之前类似的方式我们可以对不同的城市进行排名:

仅拥有约86万人的旧金山在这里脱颖而出,甚至超过了拥有2500万人口的上海等城市。然而,湾区只有很少一部分人居住在旧金山,南部湾正在发生巨大变化。为了了解这一点,我将圣克拉拉县,圣马特奥县,旧金山县和阿拉米达县都归在“旧金山湾区”标签下。

▍加州VS全球

当你看到下列数据,不必惊讶:

如果按照关注者的数量排名,旧金山的排名将高于美国和中国以外的其他国家。一个拥有86万人口的城市比英国,德国,加拿大,巴西和印度等有着千万甚至上亿国家的影响力更大。同样,如果把加利福尼亚州看作一个国家,除了美国,中国和印度之外,它的GitHub账户数量将超过其他国家。

按人均计算,旧金山每百人拥有超过4个账户。这意味着旧金山的人均开发人数是全球排名最高的国家(冰岛)的10倍以上。至少有4%的市民拥有GitHub帐户,并且真实的数字可能更加高,因为只有约15%的帐户在其个人资料中列出了位置。

虽然湾区显然是全球程序猿的最集中的地点,但只有不到3%的程序猿居住在湾区,世界上大多数程序猿都住在别的地方。即使在美国境内,也只有约11%的GitHub账户来自湾区。

注:本文编译自数据侠博文《Where Do The World's Software Developers Live?》。点击“阅读原文”即可查看原文内容。本文内容仅为作者观点,不代表DT财经立场。

作者 | Ben Frederickson

题图 | 站酷海洛

▍数据侠门派

本文数据侠Ben Frederickson,目前负责Flipboard数据产品团队的软件开发工作。

原文发布于微信公众号 - DT数据侠(DTdatahero)

原文发表时间:2018-06-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

公地悲剧:为什么物联网管制可能是无可避免之灾祸

羊可以教我们关于保护物联网的什么?为理解拥有安全设备需求所代表的困境,请考虑集体所有权问题,比如在共同拥有的牧场放牧绵羊。

2995
来自专栏云+创业计划

投资人关注新零售哪些运营数据

你是否也想获得1V1面见金牌投资人的机会?你是否也想现场签订投资意向?心动不如行动,点击参与云+创业 X 智见传媒 投资百人战活动,将有机会得到顶级投资人的深度...

6798
来自专栏智能计算时代

为什么IoT公司保持构建具有巨大安全漏洞的设备?

今年早些时候,一个令人震惊的故事触动了这个消息:黑客已经在奥地利的一家豪华酒店接管了电子钥匙系统,将客人锁在房间外,直到酒店支付赎金。令人惊讶的是,客人和任何曾...

2934
来自专栏安恒信息

高校个人信息泄露问题安恒信息能帮到你!

近日,澎湃新闻连续披露了全国各省份多所高校官网存在泄露学生个人信息的情况,这些高校在公示受助学生信息时,包含了身份证号码、银行卡号等个人信息。针对这种现象,全国...

2915
来自专栏大数据文摘

读心侦查术:从百万员工邮件中察觉内部安全威胁

1892
来自专栏CIT极客

【极客周刊】.VIP域名轰炸朋友圈,支付宝将推小程序,更多精彩内容...

4215
来自专栏企鹅号快讯

H5手游大事件:腾讯上线“微信小游戏”!支持群分享与内购

导语 相关人士透露,预计一个月内还会有更多小游戏上线,届时将出现更多外部厂商产品。 业内对腾讯何时开放H5游戏入口一直非常关注。今年11月,游戏茶馆就曾报道过腾...

22910
来自专栏VRPinea

8.23 VR扫描:Oculus计划在2019年Q1发售VR一体机Santa Cruz

近日,有报道称Oculus最新VR一体机Santa Cruz预计将于今年9月公布具体的发售日期。Santa Cruz的开发已有多年时间,支持6自由度头部追踪和内...

1772
来自专栏人工智能快报

AI早期诊断可挽救心脏和癌症患者

牛津大学医院研究人员开发出了一种可以诊断心脏病和肺癌的人工智能,使疾病可以更早地得到治疗。 2018年夏天,英国国民医疗服务(NHS)医院将开始免费提供心脏病治...

3295
来自专栏Kotlin入门系列

ncre三级信息安全 考试感悟(下)

1758

扫码关注云+社区

领取腾讯云代金券