GitHub “唯星论”可以休矣

  本文最初发表在 Towards Data Science,经原作者 Caleb Kaiser 授权,InfoQ 中文站翻译并分享。

  开源项目在 GitHub 上的星(Star)并不是它的全部意义。

译注:星是仓库的书签或赞赏表示。星标是项目受欢迎程度排名的手动方式。

  凭直觉我们都知道,GitHub 的星,对于开源项目来说并不是决定性的因素。点击“星”按钮这个行为只是表示用户认为:“我觉得这个项目很有趣。”这是一个不错的信号,但它并不是项目是否成功的定论。

  尽管如此,GitHub 的星还是很有诱惑力的。星很简单,可以计数,而且还是积极反馈的信号。作为用户,较高的星标数让你有理由查验一个项目而不是另一个项目。作为一个维护者,每一次星标数的增长都会让你感到兴奋——这是我的经验之谈。

  我在 Cortex 工作, Cortex 是开源机器学习基础设施,尽管明知如此,我仍然会对星标数的激增感到莫名的亢奋。

GitHub “唯星论”可以休矣

  来源: https://star-history.t9t.io/#cortexlabs/cortex

  很显然,我并不孤单。围绕着 GitHub 的星,有一个完整的生态系统。开源营销已经成为自己的利基市场。

GitHub “唯星论”可以休矣

  开源团队致力于通过公告实现星的里程碑。已经出现了一套完整的工具,可用于跟踪和分析星标数增长的情况(见上图)。

  曾不知几何起,GitHub 的星,从“支持一个项目的公开方式”悄然变为“开源软件的流通货币”,因此,重新评估 GitHub 的星到底有什么价值是很有必要的。

  为什么 GitHub 的星没有你想象的那么重要

  GitHub 的星确实是有价值的,不过这一点我们稍后再谈。但今天对它们的强调,却有些不相称。总的来说,GitHub 的星并不像我们所认为的那样有价值,原因有以下几点:

  1. 星并不等同于用户

  你可以在不使用项目的情况下就为它标星。你也可以在不标星的情况下去使用某个项目。这可能是显而易见的事实,但必须强调的是,星与用户之间并不存在必然的因果关系(当然,其中一个可以导致另一个)。

  例如,在 Cortex,就有数量惊人的用户没有在其仓库上进行标星。

  我们评估 Cortex 是否健康是看它在生产环境中部署模型的人数。我们通过与实际用户的互动来衡量。如果这个数字上升,我们就知道我们做的是对的。如果它下降了,就说明我们有一些问题需要去解决,即使星标数仍在增加。

  2. 星高度依赖环境

  GitHub 的星并不是一个一致的价值单位,不同项目之间的星标数比较,并非完全直截了当。

  一个项目的社区规模和活跃度、潜在用户的数量以及维护者的营销力度,都对该项目的星标数有着巨大的影响。

  比如,如果你是前端 JavaScript 框架,并且你有 Facebook 的营销预算,那么你的星标数就会比 DevOps 工程师的工具还要高。换言之,与 Elasticsearch 的星标数为 4.9 相比,Rect 的星标数只有 14.8 万,但这一事实并不能说明 Elasticsearch 是否成功——它们的关系就好比苹果和橘子一样,没有可比性。

  3. 从根本上说,GitHub 的星仍然是一种社交媒体

  虽然 GitHub 显然不是 Twitter,但 GitHub 的星仍然是一种社交媒体,所有通常的注意事项都适用。

  首先,一些 GitHub 用户在社交方面比其他用户更为活跃。有些用户为 2000 个项目进行了标星,而有些用户几乎就没标过星。

  同样,很多 GitHub 用户也会用标星来表示对一个项目的普遍支持,即使他们从未打算使用这个项目。例如,当我们刚推出 Cortex 时,我们收到了很多来自 Go 社区用户标的星,甚至是那些对机器学习不感兴趣的人。这并没有什么不对,我们非常感谢大家的支持,但这只是强化了星与使用量的脱节。

  星并非所有的一切,但它们仍然很有价值

  尽管我提出了如前所述的注意事项,但如果你能获得一颗星,仍然是好事一桩。

  GitHub 的星是人们普遍对一个项目感兴趣的信号,同样的道理,星标数可以为类似项目之间提供一个有用的基准。比较 React 和 Elasticsearch 可能没有什么意义;但 React 的星标数是 Angular 的两倍以上,这一事实可能是有意义的。

  GitHub 的星也会提供一些反馈,告诉你哪些人觉得这个项目有意思。对于 Cortex,我们发现这个项目不仅在数据科学家中很受欢迎,在开发人员中也很受欢迎,这一点很让人惊讶。这就影响了我们如何开发这一项目的一些决策。

  最后,我要说的是,GitHub 的星,能够让一个项目更容易被发现。除去显而易见的事实外,较高的星标数有助于项目脱颖而出,还会影响 GitHub 的推荐。我经常发现新的机器学习项目,那是因为我曾经给类似的项目标过星:

GitHub “唯星论”可以休矣

  出于所有这些原因,GitHub 的星还是有价值的,只不过它们并非评估开源项目的完整指标。

  作者介绍:

  Caleb Kaiser,Cortex Lab 创始团队成员,曾在 AngelList 工作,最初在 Cadillac 供职。

  原文链接:

  https://towardsdatascience.com/github-stars-are-overvalued-15ba780b36

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注