编辑:LRS
【新智元导读】GitHub年度报告显示,去年全球新增1600万程序员,共计7300万程序员一起内卷!几乎近60%来自北美之外的地区。其中,中国有755万,位居全球第二。
岁末年初,又是各大网站自我总结的时候了,有一个网站的总结尤其牵动着广大程序员的心,那就是GitHub。
GitHub在去年11月就早早公布了他们的Octoverse 2021年度报告,但迈入2022后,一起来回顾一下7300万开发者在2021年搞了哪些「开源事」吧!
全球7300万开发者,中国第二
2021年的GitHub报告比往年的数据量更大,包括400万的代码仓库和1.2万受访开发者。
报告显示,GitHub的开发者数量目前已经飙升到了7300万,而在2020年的9月,这个数字还只有5600万,2019年为4000万。并且世界财富 100 强企业中的 84% 都在使用 GitHub。
GitHub曾预计2025年用户数量将会达到1亿,现在看起来,1亿程序员内卷时代要更早到来了。
对活跃用户所在地进行统计可以发现,在全球总开发者中,来自北美洲的最多,占比达到31.5%,其次是亚洲31.2%,之后是欧洲27.3%.
换句话说,代码仓库中近 70% 的活跃用户来自北美以外。美国以外用户数量增长最快的国家和地区包括印度尼西亚、巴西、印度、俄罗斯、日本、德国、加拿大、英国和中国。
过去一年里,从开发者分布来看,43.2% 的 GitHub开发者来自北美,其次是欧洲(33.5%)和亚洲(15.7%)。
其中美国开发者最多,共有1355万,中国次之,共有755万GitHub开发者。而 2020 年,来自中国的开发者还只有 652万,其中来自印度的 GitHub 用户总数比去年同期增长了 38.9%.。
开源项目的首次贡献者数量也是在逐年增长,相较于2020年,2021年增加了21.3万名首次开源项目贡献者。
PHP不是最好的语言?
从编程语言的使用来看,Javascript从2014年以来一直稳坐头一把交椅,而Python也是万年老二,Java依然排第三位。
在微软的维护下,新兴编程语言TypeScript 已经从2018年和2019年的第七位攀升到今年的第四位,未来可期!而PHP 和 Ruby 这两种五年前最受欢迎的语言的受欢迎程度继续下降。
可以看到,从 2017 年开始, C#、PHP、C 这些开发者以往使用更多的编程语言逐渐被 TypeScript 赶超,与 C/C , Java 等静态类型语言不同的是,TypeScript 既具有 IDE 全方位的开发辅助和严格的代码检查的静态优势,又能让代码像 JavaScript 一样简洁和灵活,这也是开发者越来越倾向于使用 TypeScript 的原因之一。
排名前十的编程语言中,只有 Shell 和 C 的位置与去年相比发生了变化:Shell 取代了 C 语言上升至第 8 位。
远程工作真的香
除了对编程语言和开发者的调查外,Github 还对比了疫情前后工作场地的变化。
调查结果显示,2021 年生产力开始恢复到疫情之前的水平,而工作场所正在发生变化。当受访者被问及他们在疫情之前是如何工作的,以及在疫情之后他们希望如何与他人协作时,只有大约 11%的受访者希望回到办公室工作,比之前的 41%减少了 30%。
在新冠疫情仍然严峻的情况下,更多开发者选择了利用Github远程工作。调查结果显示,过去一年里,有20%的Github开发者选择了完全远程开发,26%的开发者选择现场与远程开发结合的方式。
2021年GitHub根据调查数据创建了预测模型,以便于帮助理解团队在软件开发和交付中使用不同实践的影响,分别是:更快速编写和发送代码、创建文档,以及支持可持续社区。
调查结果显示,Github上代码编写和生成的自动化程度显著提高,这使得不同团队之间的协作更方便,开发者的工作价值更易实现。并且实践自动化也消除了大量的分歧和重复性任务,使得团队在开源方面的表现提高了 27%,在工作项目完成度上提高了 43%,无缝代码重用让开发者的效率提升了87%。
GitHub 上的开发者模式反映了自动化软件交付是开源的关键推动因素,能帮助团队在规模上更快地发展。可以看到,大型存储库使用 Actions 的比例高于中小型库。
数据显示,一旦大型存储库开始使用 Actions,团队每天合并的拉取请求比以前增加了近 2 倍(增加了 61%),合并速度提高了 31%。在所有开源存储库中,使用 Actions 将合并拉取请求的数量增加了 36%,并将合并时间缩短了 33%。
贡献好代码!
在过去的一年里,GitHub总共merge了1亿7000万个pull request,创建了6100万个新仓库,可以看出开发者代码的上传速度大幅提升。
开发团队每日合并的拉取请求数量提高了61%。开发者更少的项目,合并速度更快,一般不到1天即完成合并。
无论是对公司项目,还是开源项目,友好的评论和及时的指导都是极其重要的。对于大型代码存储库,使用Good First Issue 标签可以吸引更多贡献者。
调查结果显示,当21%-30%的问题被标记为 Good First Issues 的存储库时,就会有大约 13% 的新贡献者加入到代码开发;有超过 40% 的 Good First Issues 标注就可以帮助项目吸引 21% 以上的新贡献者。
工具与说明文档在提升开发者生产力上也功不可没。报告显示,受益于这类工具和文档,开源库和企业项目开发者的平均产出提升了50%。
在过去相当长的一段时间里,说明文档、Readme等辅助技术资料的意义一直被低估了。
报告显示,2021年,这类辅助说明文档让Github开发者的产出大幅跃升了55%,为了提升效率,企业也应该在项目开发中多增设这类文档。
还有一点容易被忽略:高效的搜索算法固然很好,但可搜索性也是一致的代码标准和命名约定的产物。
数据显示,当开发人员可以轻松找到他们需要的东西时,他们感到有能力完成工作的可能性要高出近 60%。此外,只需拥有一个易于搜索的团队存储库,他们就可以将生产力提高 11%.。
参考资料:
https://octoverse.github.com/