全球最大开发者社区GitHub今天重磅发布2019年度报告:GitHub目前在全球已有超过4000万开发者用户,其中80%来自美国之外的地区。此外,JavaScript仍然是使用人数最多的语言,但史上第一次,Python击败Java排名第二。
4000万开发者在365天里能做什么?
今天,全球最大开发者社区GitHub重磅发布2019年度报告,透露了一个数据:GitHub目前在全球已有超过4000万开发者用户,其中80%来自美国之外的地区。
仅去年一年,就有1000万新开发者加入GitHub,创建第一个项目的用户比2018年增加了44%,130万开发者对开源做出了第一个贡献。甚至还有来自南极等新地方的贡献。
4000万开发者在去年总共构建了4400万个仓库,像“深度学习”、“自然语言处理”和“机器学习”等主题的代码仓库在过去一年中越来越受欢迎。GitHub在2018年11月突破了1亿仓库的里程碑。
微软的Visual Studio Code或VSCode (19.1K)、Azure Docs (14K)和Flutter (13K)是去年GitHub上贡献者最多的开源项目,其次是谷歌的TensorFlow (9.9K)、Kubernetes (6.9K)和Facebook创建的 React Native 框架。
JavaScript仍然是开发者在GitHub上使用的最流行的语言,但在GitHub历史上,Python首次击败Java,成为使用人数第二多的编程语言。
而去年增长最快的语言是Dart,它是谷歌UI工具包Flutter的编程语言;其次是Rust、HCL、Kotlin和TypeScript。
此外,在过去三年中,使用Jupyter Notebooks(按以Jupyter为主要语言的仓库的数量)的同比增长超过了100%。
而TensorFlow的增长更加惊人:TensorFlow的贡献者从2238人增长到25166人,已经成为一个全球性的社区。
下面我们来看详细报告。
80%的Github用户来自美国以外,中国开源使用增长迅速
在过去的一年中,有 1000万新开发者加入了GitHub社区,为全球4400万个开源项目做出了贡献。而且,接近80%的Github用户来自美国以外。
开源世界由维护者,开发者,研究人员,设计师,作家等组成的全球团队构建。平均而言,今年GitHub上的每个开源项目都欢迎来自41个不同国家和地区的贡献者。自2014年以来,来自美国以外的更多开源资源在不断增长。
今年,继美国之后,中国,印度和德国的开源使用增速加快。其中,中国的开发者fork和clone的项目相较去年增加了48%。
开源使用 Top 20地区(除美国)
香港开源贡献者增速连续2年蝉联榜首
随着开发者社区在亚洲和非洲的发展,开源变得更加全球化。从安圭拉到南极洲,我们也看到了前所未有的贡献。
从增速来看,伊朗开发者在公共储存库中创建的开源项目增速第二,GitHub也希望这一地区将来能更方便地访问GitHub。
今年,开源项目贡献者数量增长最多的是中国香港、新加坡和日本,其中香港特别行政区增速达到101%,比第二名新加坡增速还高出24%。
除开源之外,从公共和私人贡献来看,亚洲的开发者社区在2019年增长迅速。其中31%的亚洲贡献者来自中国,另外非洲开发者数量也正显著上升。自2014年以来,美国以外地区开发者数量不断上升,亚洲贡献者群体的年增长率已超过欧洲和北美。
Github 在 2019 年推出了免费的私有存储库,到目前为止,它已经影响全球,甚至是南极洲。自2019年1月推出以来,从图中可以看到80%的免费私人存储库在美国以外创建。亚洲地区创造了36%,其中大部分是由印度、中国和日本的开发者所创建。
各大洲采用免费私人存储库的占比情况
GitHub上贡献者增长最快的区域排名如下,中国香港连续第二年位居榜首,日本也在持续攀升。
按贡献者增长top 10地区(该列表仅限于2019年至少有2万名贡献者的国家和地区)
TensorFlow 汇聚25000贡献者,以开源项目连接更大软件社区
Github 上数以百万计的开发者通过软件组成了一个越来越相互连接的社区。单个程序包可以支持数百万个其他项目,以此我们能更好地看到社区间的相互连接。
平均而言,超过360万的存储库都依赖于前50个开源项目,诸如 rails / rails, facebook / jest和 axios / axios之类的项目也被数百万其他存储库使用。203个程序包依赖项通过启用的依赖关系图支持所有公共和私有存储库。平均每个开源项目具有180个程序包依赖项,但是这个数字的范围可以从几个软件包到1000个以上。
今年有35万人为前1000个项目做出了500万以上的贡献(按星星数排序)。130万开发者首次加入开源社区,并为开源项目做出了首次贡献。
每个语言生态系统(JavaScript,Python,Ruby等)中排名前50位的开源程序包都有数量众多的依赖项目。例如,尽管平均每个直接贡献者少于40人,但流行的 npm 软件包仍可能是数百万其他存储库的依赖项。
项目依赖程度最高的十大开源软件包,有超过四百万个存储库分别依赖于 lodash /lodash,expressjs /express 和 visionmedia /debug。
TensorFlow 汇聚25000贡献者,以开源项目连接更大软件社区
作为GitHub上最受欢迎的项目之一,TensorFlow 可以向我们展示开源项目如何连接更大的软件社区。依赖 Python 软件包的存储库的社区贡献者平均数量约为19000万。TensorFlow 的社区也不例外。成千上万的人为其依赖项做出了贡献,例如 Numpy,Pytest 等。
去年,有 9900 名贡献者为 TensorFlow 做出了贡献,pull requests,打开issues等。2200 位开发者为 TensorFlow 直接做出了贡献。25000 位社区贡献者为 TensorFlow 相关项目作出了贡献。现在,在项目依赖关系网络的基础上,有 46000 个依赖存储库依赖于 TensorFlow 。
(贡献包括但不限于创建拉取请求,提出问题或进行提交)
社区内部协同,解除 760 万个安全警报
代码重用可以帮助每个人以前所未有的速度构建软件,但同时也使开发者面临从其依赖项分发安全漏洞的风险。当发现潜在的漏洞时,我们会看到维护者,开发者,研究人员和工具生态系统一起工作,以确保代码安全。
今年,社区中的开发者、维护人员和安全研究人员解除了 760 万个安全警报。自 2019 年 5 月发布以来,通过 Dependabot 提出的拉取请求将 20.9 万个自动修复程序合并到 GitHub 存储库中。
最受欢迎的项目、语言和工具:Python首次击败Java位列第二
GitHub上的项目可谓种类繁多,从重新设计机器人到检测疾病等等。不过,报告发现的一个趋势是,无论开发者是测试游戏还是训练算法,他们今年的工作效率都比以往任何时候都要高。
以下是2019年最受欢迎的项目,以及最受欢迎、增长最快的编程语言和工具。
今年GitHub上新增的开源项目达到4400万个,占GitHub上所有仓库的30%。
贡献者最多的开源项目TOP 10
今年,最流行的开源项目贡献者有超过10000名。其中两个自2016年就在榜单中了,它们是microsoft/vscode 和 ansible/ansible。
2019年新进入这个榜单的是flutter/flutter, firstcontributions/first-contributions, 以及 home-assistant/home-assistant.
贡献者最多的开源项目TOP 10
贡献者增长最快的开源项目TOP 10
跨语言和平台构建应用程序和网站的工具包和框架在今年的增长很快。自2018年12月发布1.0版本以来,flutter/flutter的增速排名第二。
值得关注的新项目
有一些项目虽然增长不是最快的,不过很值得关注。包括:
- TrillCyborg/fullstack
一个full-stack样本,供用户学习一些很酷的东西,或构建你的下一个应用程序(注:程序员被拖欠工资,怒将这个项目开源了……)
- jesseduffield/lazydocker
docker和docker-compose的一个简单的终端UI,用gocui库和Go编写
- practicalAI/practicalAI
使用机器学习从数据中获得有价值的见解
- pomber/git-history
一种快速浏览任何Git存储库中文件历史的方法
最受欢迎的编程语言TOP 10
今年,开发者们在GitHub上使用了370多种主要语言。
年度使用人数最多的编程语言仍然是JavaScript,连续6年稳坐第一宝座!
而今年新爬上本榜单的是C#和Shell。而且,史上第一次,Python超过Java,成为GitHub上使用人数第二多的编程语言。
增长最快的编程语言TOP 10
随着Flutter进入GitHub趋势库,Dart今年获得更多贡献者也就不足为奇了。
报告还发现,面向类型安全和互操作性的静态类型语言:Rust,Kotlin和TypeScript的社区仍在快速发展。
Jupyter Notebooks增长超过100%
如何判断GitHub上数据科学正在快速发展?在过去三年中,使用Jupyter Notebooks(按以Jupyter为主要语言的仓库的数量)的同比增长超过100%。
NLP 增长迅猛
自然语言处理(NLP)在GitHub上的增长也非常迅猛,部分原因是因为NTLK之类的软件包降低了NLP入门的门槛。
最后,从今年的全球趋势、热门项目和最受欢迎的编程语言可以看出,软件发展很快。有着30年历史的语言正在寻找新的应用程序,而新的框架正在获得成千上万的贡献者,人们正在提交来自世界各地的一切,从Python包到学术论文。
随着管理、集成和支持新工作流的方式越来越多——通过应用程序、GitHub Actions等等——我们已经迫不及待地想要看到构建软件的下一步将如何发展。
感谢4000万开发者在2019年一起贡献开源,不管是为了工作还是娱乐,使软件比以往任何时候都更容易访问、更安全、连接更紧密。你们创建的代码、社区、工具和技术将推动我们的世界在未来几年向前发展。
完整报告地址:
https://octoverse.github.com/