写点什么

开源项目的圈内圈外

  • 2013-08-09
  • 本文字数:1334 字

    阅读完需:约 4 分钟

昨天在整理几个星期前跟红帽开放源码与开放标准部门(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 中文站编辑。到处串门的互联网信徒,相信规则的力量。

2013-08-09 04:221157

评论

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

架构之美第一篇-概述

Marvin

架构 企业架构 架构模式 架构三要素 架构发展历史

数学家的这些迷惑行为,最后都成了神操作

图灵教育

数学 数学教育 数学家

主流开源消息队列对比与分析

穿过生命散发芬芳

消息中间件 9月月更

uni-app黑马优购项目学习记录(一)

海底烧烤店ai

小程序 uni-app JavaScrip 9月月更

WeLink协作文档:办公协作再快一档

科技怪咖

SaaS 的多版本销售该如何设计

产品海豚湾

产品经理 产品设计 SaaS B端产品 9月月更

[SpringMVC]拦截器①(概述、入门案例)

十八岁讨厌编程

springmvc 后端开发 9月月更

架构师的十八般武艺:架构目标

agnostic

架构目标

Qt|实现简单的分割窗口

中国好公民st

qt 分割 9月月更

计算机网络——编码与调制

StackOverflow

编程 计算机网络 9月月更

2022-09-18:以下go语言代码输出什么?A:1;B:15;C:panic index out of range;D:doesn’t compile。 package main import

福大大架构师每日一题

golang 福大大 选择题

三分钟了解什么是时序数据库

阿泽🧸

时序数据库 9月月更

[SpringMVC]拦截器②(拦截器参数、拦截器链配置)

十八岁讨厌编程

springmvc 后端开发 9月月更

gopher成长之路(五): 2年前和2年后同一个项目

非晓为骁

个人成长

Elasticsearch聚合的嵌套桶如何排序

程序员欣宸

9月月更

爆火小游戏《羊了个羊》,我偏不玩

图灵社区

游戏开发 游戏设计 游戏史

爆火小游戏《羊了个羊》,我偏不玩

图灵教育

游戏开发 游戏设计 游戏史

面试突击84:Spring 有几种事务隔离级别?

王磊

Java 面试

Java中的Request和Response详解

共饮一杯无

Request 9月月更 Response 请求与响应

带你玩转NProgress进度条

海底烧烤店ai

前端 JavaScrip 9月月更

利用flexible.js和VSCode插件cssrem进行可伸缩布局方案

海底烧烤店ai

前端 JavaScrip 响应式网页 9月月更

上海理工大学 x WeLink智慧迎新,2022届新生体验闪电式入学

科技怪咖

[Maven进阶]分模块开发与设计

十八岁讨厌编程

maven 后端开发 9月月更

力扣93 - 复原IP地址【回溯算法】

Fire_Shield

LeetCode 字符串 9月月更

案例拆解:重要节日客情维护的礼品卡券应用

boshi

运营 礼品

一次线上事故,我顿悟了异步的精髓

勇哥java实战分享

数学家的这些迷惑行为,最后都成了神操作

图灵社区

数学 数学教育 数学家

【字符串函数内功修炼】strcpy + strcat + strcmp(一)

Albert Edison

C语言 9月月更 strcpy strcat strcmp

开源项目的圈内圈外_语言 & 开发_sai_InfoQ精选文章