写点什么

GitHub “唯星论”可以休矣

  • 2020-07-21
  • 本文字数:2166 字

    阅读完需:约 7 分钟

GitHub “唯星论”可以休矣

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


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


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


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


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


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



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


很显然,我并不孤单。围绕着 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 的星还是有价值的,只不过它们并非评估开源项目的完整指标。


作者介绍


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


原文链接


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


2020-07-21 13:592749

评论

发布
暂无评论
发现更多内容

以开发之名|斗罗大陆:创造一个尽情探险的开放式游戏世界

HarmonyOS SDK

华为 HMS Core

Windows Server 2008 R2将tomcat添加进系统服务

我爱娃哈哈😍

tomcat windows 服务器运维

【云安全】云安全产品有哪些?哪个品牌好?

行云管家

云计算 网络安全 安全 云安全

训练营 | 如何成为一名开源社区贡献者?

阿里巴巴云原生

阿里云 开源 云原生 KubeVela

数据结构学习,稀疏矩阵(三元组和十字链)

IC00

学习 数据结构 算法 学习笔记 10月月更

OpenYurt v1.0 正式发布!一文了解三大社区 SIG 重点更新

阿里巴巴云原生

阿里云 开源 云原生 openyurt 版本升级

Qt|使用QDialog窗口调用exec时崩溃解决问题

中国好公民st

c++ qt 10月月更

IM跨平台技术学习(五):融云基于Electron的IM跨平台SDK改造实践总结

JackJiang

MASA MAUI Plugin (四)条形码、二维码扫描功能

MASA技术团队

MASA MAUI MASA Blazor

Qt | QList的removeAt、takeAt的区别

YOLO.

qt 10月月更 C++

软件测试校招面试真题 | 面试官必问面试题之你有什么想问我的?

测试人

区服分析丨更透彻的游戏营运数据解读,助力高效增长

HarmonyOS SDK

分析

C# TreeView控件方法属性学习

IC00

C# 学习 程序员 上位机 10月月更

基于炼丹神器深度学习下的生命科学冷冻电镜单细胞基因分析的解决方案

GPU算力

如何在 SAP Business Application Studio 里创建 SAP UI5 应用并部署到 BTP 平台上

汪子熙

云原生 云平台 SAP 10月月更

峰会回顾 | 基于StarRocks,百草味如何通过数据赋能快消品行业

StarRocks

#数据库

跑批为什么这么难

陈橘又青

如何利用Java在Word中创建表格

Geek_249eec

Java word 表格

StartDT奇点云邀您参加2022云栖大会,11月3-5日杭州见

奇点云

云栖大会 奇点云

Baklib|企业知识管理的一些建议分享

Baklib

效率工具 知识管理 企业 知识 知识库

好文分享 | 记一次Oracle12c数据库SQL短暂缓慢问题分析

墨天轮

数据库 oracle 性能优化 征文投稿

EMQ走进富士康,探讨新生态模式下智能制造与智能汽车基础架构的未来

EMQ映云科技

车联网 物联网 IoT emqx 10月月更

校招面试真题 | 和面试官聊的很 high,但就是拿不到 offer,怎么办?

霍格沃兹测试开发学社

Baklib|打造属于您自己的企业维基

Baklib

产品 效率工具 企业 wiki 产品文档

CEF | CEF浏览器客户端功能扩展:实现与JS交互的功能

YOLO.

qt 10月月更 C++

嵌入式 Linux 入门(一、Linux 基本介绍及文件结构)

矜辰所致

Linux 10月月更 文件结构

Linux 各个Namespace 的作用

忙着长大#

linux namespace

uniapp实现国际化多语言切换

源字节1号

软件开发

云管理工具是干什么的?有哪些?哪个品牌好?

行云管家

云计算 云管理 云工具

GitHub “唯星论”可以休矣_文化 & 方法_Caleb Kaiser_InfoQ精选文章