专栏首页机器学习与统计学GitHub 2019 年度报告都说了什么?

GitHub 2019 年度报告都说了什么?

转自新智元,编辑:小芹、亮亮

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) 是去年 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/vscodeansible/ansible

2019 年新进入这个榜单的是 flutter/flutter, firstcontributions/first-contributions, 以及 home-assistant/home-assistant.

贡献者增长最快的开源项目 TOP 10

跨语言和平台构建应用程序和网站的工具包和框架在今年的增长很快。自 2018 年 12 月发布 1.0 版本以来,flutter/flutter 的增速排名第二。

值得关注的新项目

有一些项目虽然增长不是最快的,不过很值得关注。包括:

  • TrillCyborg/fullstack 一个 full-stack 样本,供用户学习一些很酷的东西,或构建你的下一个应用程序(注:程序员被拖欠工资,怒将这个项目开源了……)
  • jesseduffield/lazydockerdocker 和 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/

本文分享自微信公众号 - 机器学习与统计学(tjxj666)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-22

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 贼好理解,这个项目教你如何用百行代码搞定各类NLP模型

    近日,来自韩国庆熙大学的 Tae Hwan Jung 在 Github 上创建了这样一个项目:「nlp-tutorial」。

    zenRRan
  • TensorFlow是什么?怎么用?终于有人讲明白了

    导读:在开始使用TensorFlow之前,必须了解它背后的理念。该库很大程度上基于计算图的概念,除非了解它们是如何工作的,否则无法理解如何使用该库。本文将简要介...

    CDA数据分析师
  • 「Python小例子」,我创建的github库,欢迎关注!

    Python语言使用率越来越高,基于Python的包更是枝繁叶茂,遍地开花,tiobe编程语言排行榜最新统计显示Python是增长最快的语言。

    double
  • tensorflow零起点快速入门(2)

    在使用jupyter notebook的时候,可能会出现使用异常,需要使用config=tf.ConfigProto(allow_soft_placement=...

    嘘、小点声
  • GitHub年度报告:Python首次击败Java,中国成第二大开源贡献国

    GitHub 于11月7号发布了年度报告。去年有1000万的新开发者加入了GitHub社区,80%的repo贡献来自于美国本土之外,中国对开源的贡献仅次于美国。

    猴哥yuri
  • 练手|常见近30种NLP任务的练手项目

    经常有人问我:老大让我完成xxx,我不会,他也不会,但是很着急。这个任务怎么实现啊?这个任务需要什么技术啊?这种情况我遇到有100+次了,而且很多时候问得问题跟...

    zenRRan
  • 一文读懂TensorFlow 2.0高阶API

    在TensorFlow 2.0中对大量的高阶API库进行了删减与合并,根据官方的解释,这一切的变化都是为了使TensorFlow2.0更加易用和简洁。本文以官方...

    用户1682855
  • GitHub 标星 3.6k,一本开源的深度学习中文教程!

    深度学习中绕不开的便是对算法框架的实际使用了。如果没有娴熟的工程实践能力,很多优秀的算法设计就无法真正使用。TensorFlow2.0 正式版已发布了一段时间,...

    GitHubDaily
  • 医疗影像处理:去除医疗影像中背景的影响2D/3D【numpy-code】| CSDN博文精选

    在医疗影像中特别是CT影像,包含大量的背景,在进行器官分割时,首先去除背景对分割的效果有很好的提升。本博客使用Python处理医疗影像并去除背景的影像。

    AI科技大本营
  • OpenVINO运行Tensorflow模型

    请先阅读我的上一篇文章《Visual Studio 2017 配置OpenVINO开发环境》,在VS2017中配置好OpenVINO环境。

    superhua

扫码关注云+社区

领取腾讯云代金券