2022 年 11 月 14 日,发布于 数据探索

4 分钟阅读

顶级 GitHub 项目的 Bus Factor

The Metabase Team Portrait
Metabase 团队
‧ 2022 年 11 月 14 日,发布于 数据探索

‧ 4 分钟阅读

Bus factor of top GitHub projects Image
分享这篇文章

巴士系数”是指一个项目中,有多少人被公共汽车撞倒(或辞职)后,项目才会陷入严重困境。我们对 GitHub 上排名前 1,000 的项目(按 star 数)的巴士系数很感兴趣。

观察结果

查看我们的仪表板,或继续阅读以了解我们的发现。

数据集

  • 我们使用 GitHub API 和 truckfactor 获取并计算了 GitHub 上排名前 1,000 的仓库的巴士系数(按 star 数)。
  • 由于内存限制,我们只能计算 GitHub 上约 95% 的仓库的巴士系数。
  • 为了排除无代码仓库(例如学习资源或主题精选列表),我们移除了主要编程语言无法确定,或者仓库主要由以下文件类型组成的项目:Makefile、TeX、Dockerfile 和 Markdown。
  • 如果您想亲自使用数据,请下载并探索数据集

我们如何计算巴士系数

我们使用了一个名为 truckfactor 的库来计算巴士/卡车系数。以下是 truck factor 的计算方式。对于每个仓库,truckfactor(此处我们直接引用仓库中的内容)

  • 从仓库读取 git 日志
  • 计算每个文件的知识所有权归属。
    • 当贡献者编辑文件中的行数最多时,她就拥有该文件的知识所有权。
    • 该计算的灵感来自 A. Tornhill 您的代码即犯罪现场
    • 请注意,仅针对文本文件计算知识所有权。该工具可能无法为仅包含二进制文件的仓库返回好的答案。
  • 然后,类似于 G. Avelino 等人估算卡车系数的新方法,只要仍有一半以上的文件有知识所有者,就会从分析中删除低贡献作者。剩余知识所有者的数量是给定仓库的卡车系数。

作为一些背景信息,2015 年2016 年 进行的研究计算了 133 个热门 GitHub 项目的巴士/卡车系数。结果表明,大多数项目的巴士系数都很小(65% 的巴士系数 ≤ 2),并且只有不到 10% 的项目的巴士系数大于 10。

巴士系数的分布

几乎一半的项目巴士系数为 2 或更小。

只有 10% 的项目巴士系数为 6 或更高。

仓库 star 数与巴士系数之间没有相关性

我们最初认为,更受欢迎的项目应该有更多的贡献者,因此巴士系数更高,但事实似乎并非如此。

常用顶级语言的平均巴士系数

我们这里讨论的是一般语言,因此 HTML 和 CSS 等语言也参与其中。

  • 超过一半的项目使用 Shell 脚本语言(Bash 脚本)。
  • 最常见的语言是基于 Web 的工具:JavaScript、HTML、CSS 和 Typescript。顶级通用语言包括 Python、C 和 Java。
  • 与使用通用编程语言(Python、C、Java 和 C++)编写的项目相比,使用基于 Web 的开发语言(JavaScript、HTML、CSS、TypeScript 和 SCSS)编写的项目往往具有较低的巴士系数

在 star 数最多的仓库中,JavaScript 是最受欢迎的标签,其中以流行的 Web 框架和库(如 ReactVueBootstrapAngular)为主。如果我们合并 GoGolang,则使用 Go 编写的项目将成为第二大标签语言(尽管某些仓库可能同时包含 GoGolang 标签,这会夸大标签计数)。

Hacktoberfest 是第二大常见标签,这很有道理。Hacktoberfest 是一个为期一个月的开源项目庆祝活动,旨在鼓励人们为开源项目做出贡献,因此仓库维护者有动力添加该标签以吸引贡献者。

按软件类型划分的巴士系数

我们还按软件类型细分了巴士系数,机器学习拥有的巴士系数为两位数的项目最多。

后端项目

前端项目

机器学习项目

商业智能项目

结论

  • Metabase 支持公共交通。
  • 软件构建在纸牌屋之上。
  • 为您的代码编写文档。
  • Metabase 的巴士系数尚可 (4)。此外,我们是一个完全分布式的团队,因此巴士事故必须在全球范围内协调才能使项目陷入任何危险境地。
  • 但我们的巴士系数可以更好,所以,你知道,我们正在招聘

您可能也喜欢

所有文章
The hidden costs of the data stack Image 2023 年 5 月 12 日,发布于 数据探索

数据堆栈的隐藏成本

维护数据堆栈相关的不太明显的成本的不完整列表,以及您可以执行的一些操作来控制这些成本。

The Metabase Team Portrait
Metabase 团队

9 分钟阅读

The data guide to travel Image 2022 年 10 月 04 日,发布于 数据探索

旅行数据指南

我们从 Google 地图上抓取了一些数据,以找出世界上访问量最大的目的地最吸引人的景点。

The Metabase Team Portrait
Metabase 团队

4 分钟阅读

所有文章
Close Form Button

订阅我们的新闻资讯

随时了解 Metabase 的更新和新闻。绝无垃圾邮件。