开源项目的圈内圈外

阅读数:56 2013 年 8 月 9 日

话题:语言 & 开发

昨天在整理几个星期前跟红帽开放源码与开放标准部门(OSS)技术总监 Carl Trieloff,以及 Gluster 社区总管 John Mark Walker 的对话记录。当时是在上海 Intel 园区的一个 oVirt 技术研讨会,活动规模不大,但是是国际交流,参加活动的也都是虚拟化、存储、网络这几个圈子里懂行的。

一直以来跟不同的人聊开源,发现大家对开源的理解都不一样。拿 WordPress 建站的 Web 开发者是一套思路,搞国产操作系统的是一套思路,在 Linux 内核、OpenStack 这样的国际社区搞代码的又是一套思路。虽然思路各自不同,不过有一点很有意思:大家都觉得自己的那套思路才是真正的开源。

Carl 和 John 属于国际开源社区的圈子,而且是相对底层的圈子,更加贴近硬件。应该说,如果靠近用户的工程师(尤其是 Web 层面)更像是半个产品经理或者营销人员,那么靠近硬件的工程师更像是纯粹的工程师。

在对话中,我聊到 JBoss 项目的红帽贡献者密度特别多的情况,问 Carl 这是不是一种代码管控的公司策略。Carl 对这个话题说了不少,今天将他的这部分回复整理出来分享一下,对于这个圈子之外的人,了解一下还是挺有意思的。不久之后,InfoQ 上会放出本次采访的完整内容。

以下是 Carl 对这个情况的解读:

历史上,在 JBoss 被红帽收购之前,他们整个采用了开源的开发模式——也就是说,产品和项目完全没有分离。这样相对来说比较简单一些。所以,他们在招聘方面非常激烈——几乎把所有给这个项目贡献过代码的工程师都收编了。到了我们收购他们的时候,大部分 JBoss 的贡献者都已经在公司内部了。

这样做,也好也不好。就当时的情况来说,在我们收购他们之后的几年间,因为需要的人更多了,所以又招了很多 JBoss 圈子的工程师到红帽,这事实上是把社区的贡献者都挖干了。

所以到现在,我们看到有很多 JBoss 品牌下的项目正努力在产品和社区项目之间达成一个平衡。比如,很多社区项目现在都有独立的名字,比如 Aquillian 和 WildFly 等。这些名字都是工程师自己取的。所以在这方面的推动下,现在有一些项目的外部社区又重新被培养出来了,好比刚才提到的 Aquillian,以及 Infinispan 项目,贡献者现在会比较丰富一些。当然了,不同项目的情况不同,有些 JBoss 子项目的红帽工程师比例还是非常高的,来自外部的人比较少。

所以我觉得,一个项目的内部工程师比例多少,只是招聘行为的自然结果。有些项目会觉得“我们收编了好多圈内人”是一个很自豪的事情,不过这不算是公司的策略。

拿 Linux 内核而言,我记得好像差不多在 5 年前,我们在内核领域的招聘非常猛,几乎把内核贡献的八成都承包了。到了今年,我们看到 Intel 开始活跃——他们在 3.39 版的贡献度是最高的。这实际上是新鲜血液进入的结果。内核贡献比例下降,并不是说我们的贡献变少了,或者是我们的内核开发者消失了。这只是整个蛋糕变大了的结果。我们想要看到更多这种稀释的过程。Intel 可能在一两个版本会保持头号贡献者的身份,之后可能其他人有个新的硬件要支持,或者别的什么情况,就变成了 IBM。再之后可能又是我们,再之后可能是富士通。

有这种变化,其实是非常棒的。这说明这个项目很健康,很有活力,刺激了更多人加入这个圈子,形成新生代。

本日作者简介

杨赛(@lazycai),InfoQ 中文站编辑。到处串门的互联网信徒,相信规则的力量。