人们经常问我 “有多少人使用 Dask?”

和任何非侵入式开源软件一样,这个问题的答案是 “我不知道”

有很多可以作为用户数量的代理指标,比如下载量、GitHub star 等等,但其中大多数都非常不准确。作为一个试图为其他维护者寻找工作的项目维护者,我有动力采用我能找到的最高数字,但这在某种程度上是不诚实的。今天这个数字可以用这个很可能不真实的说法来表达。

Dask 每天有 50-100k 次下载。

这个数字来自 Python Package Index (PyPI)(图片来源 pypistats.org

Total Dask downloads

这是一个巨大的数字,但几乎肯定是具有误导性的。常识告诉我们,Dask 每天不可能有 100k 新用户。

机器人主导下载计数

如果你更深入地研究这些数字,你会发现它们几乎完全是由于自动化流程。例如,在 Dask 的 100k 新用户中,令人惊讶的是相当多的用户似乎在使用 Linux。

Linux dominates download counts

虽然 Dask 作为一个分布式库,确实经常在 Linux 上运行,但在每次部署中看到每台机器都单独 pip install dask 会很奇怪。这些下载更可能是自动化系统的结果,而不是个人用户。

从传闻来看,如果你能获得更细粒度的下载数据,你会发现一小部分 IP 主导了下载计数。这些下载大多来自持续集成服务,如 Travis 和 Circle,或者来自 AWS,或者来自世界上少数几个特例(有时是中国的一些人试图镜像所有东西)。.

查看 Windows

因此,为了避免这种影响,我们开始只查看 Windows 的下载量。

Dask Monthly Windows Downloads

这里的数量级对我来说似乎更诚实。这些月度数字折合约为每天 1000 次下载(OSX 和 Linux 可能再乘以两到三倍),这更符合我的预期。

然而,即使是这个也很奇怪。这种结构与我的个人经验不符。为什么 2018 年采用量有如此大的变化?2019 年的巨大峰值是什么?从传闻来看,维护者并没有注意到用户数量的显著增长。相反,我们经历了采用量随着时间平稳持续的增长(大多数长期软件增长都是如此)。自 2018 年以来没有持续增长也很奇怪。从传闻来看,过去几年 Dask 似乎一直在稳步增长。像这样的阶段性转变与观察到的现实不符(至少就我个人观察到的而言)。

绘图的 Notebook 可在此处获取

文档浏览量

我最喜欢的指标是查看文档的每周独立用户数。

这高估了用户数,因为许多人查看文档但并未使用项目。这也低估了用户数,因为许多用户并非每周都查阅我们的文档(我真希望是那样)。

Dask weekly users on documentation

这种增长模式符合我的预期以及我维护一个多年来稳步获得关注的项目的经验。

图表来自 Google Analytics

依赖项

查看项目的依赖关系也很重要。例如,许多地球科学和地理科学的用户通过另一个项目 Xarray 使用 Dask。这些用户不太可能直接接触 Dask,但通常将 Dask 作为 Xarray 库的基础设施来使用。我们可能应该也加上 Xarray 用户的一半左右。

Xarray weekly users on documentation

图表来自 Google Analytics,由来自 Xarray 的 Joe Hamman 提供

总结

Dask 每天大约有 100k 新用户(下载量计数)或者总共有大约 10k 用户(每周独立 IP)。对我来说,10k 这个数字听起来更可能,也许因为依赖关系会增加到 15k。但事实是,没人真正知道。

当我们试图评估社区维护的开源软件(OSS)对社会的影响时,对其使用情况的判断非常重要。这也是一个根本性的难题。我希望这篇帖子有助于强调这些数字可能具有误导性,并鼓励我们所有人更深入地思考如何估算影响。


博客评论由 Disqus 提供支持