查看原文
其他

见点不一样的 GitHub Insight?

PingCAP 2022-12-19

Editor's Note

本周末,上海线下,来 DevJoy 找我们玩吧!

The following article is from DevJoy Author 小 O 同学

「DevJoy:开发者游园会」幕后系列今天继续!
我们邀请 TiDB 社区来 DevJoy 摆摊的时候,与社区的同学们交流了一下怎样的形式才能展现技术的同时,又不失好玩?于是,就聊到了 OSS Insight:一个可以展示开源社区的工具😍。

OSS Insight 是啥?

OSS Insight 是一个有趣、好玩、功能强大的开源洞察工具,可以帮助用户深入分析 GitHub 上任意一个代码仓库和开发者,还可以将两个代码仓库进行多维度的(贡献者、代码提交情况、协作讨论情况等)比较,并提供全面、有价值和趋势的开源见解。希望在这次 DevJoy 上能和大家一起玩这个工具,发现开源世界中一些有意思的事儿!
项目体验地址:https://ossinsight.io/
众所周知,在 GitHub 世界中,开发者们参与开源的方式多种多样。当开发者在进行项目开发时,往往会使用开源素材辅助自己的项目,在这一过程中,一旦发现优化点或者新的功能点,他们就会主动和项目建立联系,向该仓库提交自己补充的代码或者参与建设项目的讨论,来帮助项目变得更好。开发者在 GitHub 上发生的这一系列行为,都会产生对应的 Event 事件,比如,提交代码的时候触发 Push Event,为项目点赞的时候触发 Watch Event,甚至在 review 代码的时候也会产生Request Review Event
我们认为开发者在 GitHub 中活动所产生的事件能够帮助我们建立【开发者】- 【代码】-【开源软件】-【真实世界】的洞察。并且我们也希望让更多的人了解到这一过程,所以我想用这个工具将开发者在开源世界中的行为轨迹可视化地展示出来。

OSS Insight 能做啥?

针对开发者的分析

在网站首页的大搜索框中输入一个开发者的 id,我们能看到开发者最常用的语言、贡献了哪些 repo、贡献的频率、协作情况等。我们试试以 PingCAP CEO Max 为例,输入 ngaut,首屏右侧展示的是 Max 在 2015 年到现在为止在 GitHub 的活跃情况,可以看到,在创业初期的几年他很勤奋在写代码,最近两年 code review 会多一些。

针对代码仓库的分析

在代码仓库分析页面,我们能看到仓库的受欢迎程度、贡献者所在的国家和公司等特征、仓库的更新频率、Issue/PR 的解决效率等常用的开源项目衡量指标。还可以从这些维度出发,对任意 2 个开源项目做对比。我们再试试看分析一个开源项目,比如 k8s,我们比较好奇使用或者贡献一个开源项目的人,他们的用户画像,比如他来自哪个国家、是哪个公司的人、以及他是怎么参与的。
OSS Insight 把 50 亿事件数据和 5000万用户数据做了结合,得到了关于用户画像的 insight。我们可以看到在这个世界地图,展示了对 K8s 感兴趣的人、反馈问题的人、贡献代码的人的地理分布情况,可以看到对 K8s 感兴趣的人里面,中国人多一些,而在贡献代码方面,北美则多一些。
再看看公司画像,我们看到很多熟悉的面孔:Google、微软、红帽、腾讯等等。

对最新技术趋势的实时预测

在 Collection 页面,我们精选了多个热门技术领域下的开源项目合集,对比这些项目的受欢迎排名、贡献者排名等,从中发现最新的流行项目和技术趋势。

更多有趣好玩的东西!

我们还搭建了一座 GitHub Contribution City, 用酷炫的方式,实时地展示开发者们在 GitHub 上的贡献,带你可视化地感知开发者们是如何用热爱去构建这个世界的。

写在最后

通过这个工具,我们发现了许多开源世界中的有趣故事:一些里程碑式的关键节点,一些独具特色的项目产生并迅速发展,一些功能强大的开源软件被无数个开发者所创造,并且这些项目与项目、人与人、人与项目之间相关联,协作和创新成为开源世界的代名词。
那么问题来了,OSS Insight 是怎么做到支持这么多维度的分析的呢?在超过 50 亿行数据量的情况下,它使用了什么「黑科技」使一切复杂的、实时的分析快速实现呢?来 DevJoy 和我们一起交流(我们就悄咪咪把秘诀分享给你!👀

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存