四种开源社区

还没有读者喜欢这个。
A diagram of a bug.

Opensource.com

开源软件不仅仅关乎编程代码。存在大量不同的组织结构,促进了开源软件的开发和传播。在本文中,我将解释开源社区内主要类型的组织。

我区分了以下几种类型:

  • 单供应商开源项目
  • 开发社区
  • 用户社区
  • 开源能力中心

这四种类型的组织代表了基本的组织模式,它们之间的变体和过渡非常常见。

4 organizations of open source communities

单供应商开源项目

公司通常在内部开发软件,并最终出于某种原因,以开源许可证发布产品。他们拥有软件的完整版权,因此有权遵循例如双重许可模式。这包括一方面以开源许可证发布软件,另一方面通过传统的专有许可证销售产品。公司通过让外部贡献者签署贡献者或贡献者许可协议来确保自己仍然是唯一的版权所有者。这些合同将贡献的源代码和附加资产的版权转让给领导开源项目的软件公司。

这些开源项目的主要目标是在全球范围内销售专有软件许可证。获得外部贡献者具有挑战性,因为放弃知识产权给主导公司对外部软件开发人员几乎没有激励。然而,现实证明,即使是单供应商开源项目也能够建立一个开源社区。我认为 Oracle 的 MySQL、Openbravo S.L. 的 Openbravo ERP、Magnolia Inc. 的 Magnolia CMS 或 Alfresco Inc. 的 Alfresco DMS 等项目在其各自的市场中都是成功的单供应商开源项目。通过公司主导的开发者大会、合作伙伴计划和其他社区建设活动,这些公司成功地创造了相当大的市场份额。

OSS Projects

有时,批评人士会说,这些单供应商开源项目不是真正的开源项目,因为它们背后有一家公司控制着整个社区。与专有软件一样,这可能会导致供应商锁定,从而导致产品不可持续。我同意,即使用户不决定购买企业版,他们也会与主导公司建立依赖关系。

然而,由于相同的源代码是以开源许可证提供的,因此不满意的用户或开发人员始终有能力获取代码,重新命名品牌并启动一个新的开源项目。这种所谓的开源项目分叉在过去发生过很多次。例如,目前存在 MySQL 的几个分支,称为 MariaDB、OurDelta 或 XtraDB。此外,由 Compiere Inc. 领导的开源 ERP 系统 Compiere 在 2006 年被分叉为新的开源项目 ADempiere。这证明,即使是这种单供应商控制的开源项目也是可持续的,如果活跃的开发者社区的很大一部分决定继续进行新的开源项目。

开发者社区

由开发者社区管理的开源项目代表了典型的开源项目。它们要么由个人发起,要么由软件公司、公共管理部门或大学等组织发起。通过来自不同来源的贡献,开源项目的源代码由多个利益相关者拥有。贡献者出于不同的动机参与开发过程,并遵循不同的目标。一些程序员出于意识形态或其他内在动机而参与其中。一些开发者贡献代码是因为他们自己需要该软件,或者因为他们想学习一些东西。或者他们参与社区是因为他们受雇于一家开源公司,或者因为他们拥有一家为客户提供服务的 IT 企业。

OSS projects and developer communities

开源项目可以组织成一个单一的社区,例如 Document Foundation 内的 LibreOffice,或者 TYPO3 Association 内的内容管理系统 TYPO3。或者该项目可能是更大的开源协会的一部分,该协会拥有由基金会或其他法律机构管理的各种其他开源项目。例如 Linux 基金会、Apache 基金会、Mozilla 基金会或 Debian 社区。这些开发者社区以非常不同的方式组织,遵循各自的规则和规范。它们共同之处在于,项目的控制权通常在主要贡献者之间分配(称为精英管理),并且软件的版权在不同的利益相关者之间共享。因此,控制权是共享的。没有一个商业实体可以决定例如发布流程、功能路线图或开源许可证的类型。

用户社区

用户社区在控制权在不同利益相关者之间分配的方式上与开发者社区相似。然而,在用户社区中,软件产品的最终用户组织拥有其版权。该软件要么是在软件用户内部开发的,然后以开源软件的形式发布。要么该软件是在开源许可证下作为外部供应商的合同工作创建的。在任何一种情况下,软件用户都是软件产品的所有者,供应商为开源产品提供服务,但不拥有源代码。拥有代码的版权允许用户定义软件的开源许可证类型。

开源产品的用户形成用户社区,因为他们希望保持对其核心系统的战略控制,并且因为他们希望与他人分担开发和维护成本。拥有广泛的开源软件产品的用户基础也可能导致外部贡献,例如文档、翻译、错误修复、扩展,并最终开发核心组件。在他们作为软件用户的角色中,社区的主要活动是定义共同的需求,并通过内部开发或与外部公司签订合同来实施这些需求。GENIVI Alliance 就是这样一个用户社区的例子,它是由汽车制造商(宝马、雷诺、通用汽车、本田、捷豹等)和供应商(大陆集团、博世、先锋等)组成的小组,他们正在开发一个开源车载信息娱乐系统。或者再保险公司慕尼黑再保险和 Allianz ART Insurance 正在构建企业风险管理 (ERM) 套件 PillarOne。

OSS projects and user communities

另一个例子是美国的 Kuali 基金会。这个用户社区大约有 70 名成员,他们主要是使用开源解决方案进行校园管理的大型美国大学。在瑞士,存在由瑞士联邦最高法院创立的 OpenJustitia 平台,用于记录和研究以前的法院判决、法律和其他法律数据库。

开源能力中心

作为第四种类型的开源组织,存在各种形式的开源能力中心。它们充当供应商和产品中立的平台,目标是促进公共机构、私营公司、非政府组织等使用开源软件。开源能力中心弥合了软件用户、IT 提供商和独立开源社区成员之间的差距。

作为活动,开源能力中心通常组织会议和研讨会,为管理部门和企业提供咨询服务,并开发关于开源的研究报告和出版物。此外,开源能力中心通常创建开源公司和资质目录,建立和管理关于开源知识和经验的信息平台,并倡导在政府组织和政治中使用和发布开源。

OSS competence centers

开源能力中心还可以解决开源社区内集体行动问题的挑战:通常,广泛的开源用户对改进软件存在共同需求。然而,由于没有一个商业实体来收集用户少量但众多的资金,因此什么也没有改变。开源能力中心可以通过定义共同需求、汇集资源和采购供应商解决方案来协调某些用户需求的开发活动。

成功管理的开源 能力中心 遍布世界各地。发起组织、会员结构、活动、规模和资金等可能有所不同。然而,它们都以改善环境和使用和开发开源软件的总体条件为共同目标而工作。这样的开源能力中心可以在例如瑞士 (瑞士开放系统用户组 /ch/open) 、德国 (开源商业联盟)、西班牙 (CENATIC)、法国 (Adullact)、英国 (OSS Watch)、挪威 (Friprog) 以及欧洲 (Open Forum Europe) 找到。 

User profile image.
Matthias Stürmer 是 Ernst & Young 的经理,也是 Opendata.ch 的董事会成员。

3 条评论

信息丰富的社区类型概述!
我目前活跃的社区,即 http://ez.no ,绝对是一个“单供应商开源项目”。需要说明的是,从第一天起,该产品就以开源许可证发布。有关更多详细信息,请阅读 https://open-source.net.cn/business/13/4/ez-systems。

我以前活跃于 Joomla 项目,我认为它最适合开发者社区。

这两个项目对我来说都是(或者应该说是?)一个非常有学习价值的环境。我们在单供应商社区中持续面临的挑战是在企业和社区之间保持平衡。

好文章。感谢您提到 Cenatic。
Pop Ramsamy
观测站负责人。CENATIC

这是一个良好的开端,尽管概述的层次很高。在 Apache、Eclipse 和 Linux 领域内,围绕各种产品或发行版实际上存在许多不同的社区类型。即每个基金会都有其核心规则和许可要求,但各种 Apache 项目或 Eclipse 插件的社区实际上以某种不同的方式协同工作,具体取决于谁参与其中。

此外
- “版权”框具有误导性。一些项目要求版权转让,许多项目不要求。真正重要的是许可。例如,在 Apache,原始所有者持有版权,但授予 ASF 和所有下游用户许可。

- 并且它是“The Apache Software Foundation”,而不仅仅是“Apache Foundation”。 8-)

知识共享许可协议本作品根据知识共享署名-相同方式共享 3.0 未本地化版本许可协议获得许可。
© . All rights reserved.