开放的 Apache 究竟有多开放?
Fri Feb 23, 2018 | 2900 Words | 大约需要阅读 6 分钟 | |
题记
笔者经常参加一些北京当地的一些线下聚会,或者是加入一些微信群,所谓的以某开源软件项目巧立名目的,诸如”linuxxx”“xxx中国”之类的,有一个现象特别的明显,那就是你必须自己是属于哪个公司,这家公司是干什么。我常常纳闷,为什么?于是找到些许的历史原因:
- 倒退30年,一切都是国营的时代,没有单位就是
- 整个历史所表现的文化,都是以集体来呈现的,个人是微不足道的。
那么为什么Apache软件在本土却这么受欢迎,治理方式开放到极致,却无人问津。是怎么一回事了呢?
Apache 软件基金会,是整个现代开源软件生态系统的基石——它支撑着当今互联网经济,为其提供最为广泛使用的和重要的软件解决方案。 —— Mark Driver, Research Vice President, Gartner
Apache软件基金会对协作开发的承诺,长期以来一直是生产高质量软件的典范,且矢志不移的推动着开放式开发方法,被开源圈内成功的影响者们所赞誉。来自Apache 的软件项目几乎占据互联网的半壁江山、数百兆字节的数据是由Apache软件所驱动、执行着万亿次浮点运算的操作、并在几乎所有行业中存储数十亿个对象。Apache软件项目几乎是每个终端用户计算设备不可分割的组成部分,从笔记本电脑到平板再到手机,无处不在。
开放源代码
开放源代码相比闭源的企业软件,有如下独特的优势:
- 低廉的费用
- 高质量的软件
- 免受供应商锁定和专有解决方案的束缚
开放式的开发方法
开放式的开发方法适用于各种规模的组织,让其可以从快速的开发速度的提高中受益,并通过以下方式获得业务上优势:
- 减少重构应用程序的投资
- 活跃的社区支持
- 技术领先
开放的领导力
“Apache软件基金会已经为现代应用程序和基础设施软件以及它开发的开源协作流程设立了标准。” ————Matt Aslett, Research Director, 451 Research
如今,Apache 软件基金会开发、管理和孵化着超过350个开源项目,之所有有如此的成就是因为通过其开发式的领导力、强大的社区、以及被称之为独特的“Apache之道”的精英式的管理流程。
- “扁平化”的组织:Apache 项目以及社区驱动开发方式
- 项目的开发和项目的领导完全由个人志愿者推动
- 提供组织,法律和财务支持
向全世界所有人开放
所有的Apache软件 —— 项目下载、文档、更新、补丁等—— 均可自由的下载和使用,没有任何的许可证费用或其它类型的费用。
- 任何人,可用于任何目的
- 不受任何的安装或部署限制
- 在灵活的、商业友好的 Apache 许可证2.0 下发行
开放的参与方式
Apache项目所有的代码均有志愿者在没有任何报酬的情况下所完成,他们来自全球五湖四海,有超过6000多名独立个人或公司员工。Apache软件基金会的治理是社区的方式,以最直接的方式提供服务——人们之间的协作在项目内。还有被广为称颂的Apache精英制的流程,被众多个人和组织称之为最佳实践。
- 贡献指的是代码、补丁、以及文档
- 贡献者经过检验,通过持续不断的贡献可以被提升为“提交者”,而提交者是可以直接写入/提交代码到代码仓库的,并有权利对社区的一些决策进行投票,并为提交者委员会提供活跃用户
- 对基金会的发展、演变和进步中表现优秀的提交者可能被现有成员提名为ASF成员
开放的社区
ASF社区开发帮助新手学习关于Apache项目、治理、活动,并为如何成为Apache精英的一份子提供向导式的帮助,以及了解Apache社区均是由志愿者个人组成。
- “社区胜于代码”,是Apache软件基金会核心原则,也是基金会赖以生存的基石
- 自2005年该计划创建以来,ASF每年都担任Google Summer of Code指导组织
- 超过6,300名Apache提交者帮助发展和维护Apache社区的健康
开放的项目监督
Apache软件基金会本身并不会干涉Apache项目的技术方向,而是为项目自治提供运营支持。所有的Apache项目都由自选的积极贡献者团队进行监督。
- Apache 项目管理委员会(PMC)指导日常操作,包括社区开发和产品发布
- ASF董事会任命一位副总裁担任PMC主席,并负责与董事会沟通
- 副总裁/ PMC主席角色是行政性的,对项目没有额外的权重或影响力(与其他PMC成员一样对项目事务投一票)
开放式创新
所有的项目都要通过Apache孵化器,无论是捐赠的代码、在Apache创建的项目,还是某社区打算成为完整的Apache项目,想要从孵化器毕业,成为Apache顶级项目,候选项目必须满足Apache成熟度模型,针对代码完整性、版权、许可证、版本发布、共识建立、独立意识等均有严格的要求:
- 187个项目管理委员会成员负责管理312个Apache项目
- 在Apache 孵化器中孵化的项目有54个
- 在大数据、程序公用库、服务器方面获得了举世公认的领导地位
开放式的沟通
ASF的所有官方通信都通过邮件列表进行。为了解决地理位置分布在全球不同时区的问题,邮件列表可以保证良好的异步的通信,几乎所有的Apache社区都坚持和认同这样的做法。
- “一件事如果没有在邮件列表中讨论过,那么它就没有发生过”
- 为了保证Apache GroupsHi建立在透明的文化基础之上的,所有的协作都需要在邮件列表中进行
- 自ASF成立以来,340,000多位作者撰写了17.5万之多的电子邮件,涵盖了超过7.5万个主题,以及归档了1,247份邮件列表,这些都是可以公开访问的
开放的机会
”和其它的开源组织不同的是,Apache软件基金会的独特性在于不受任何的商业组织的影响…正是这种独立性为蓬勃发展的开源开发者们创造了一个安全的避风港。———— Matt Asay, InfoWorld
Apache 的项目必须是独立于商业影响进行管理。作为供应商中立的非营利组织,ASF和所有Apache项目都不支持任何特定供应商,也不支持或支持其他供应商。
- Apache软件基金会不会不鼓励“有竞争关系的”项目开发
- 基于Apache的项目,第三方可以自由地进行盈利或非盈利的商业模式
- 商业友好和宽容的Apache许可证v2已经成为开源世界的行业标准
Apache 仍在成长着
Apache 软件基金会以难以置信的方式成长着,在过去的18年里增长率为35,000%,要知道这是发生在非常有限的资源的情况下。ASF负责整个开源领域的无数贡献者的数百万行代码:每天全球数百万人访问ASF的二十几台服务器和75个不同的主机。
- Apache软件基金会最初的成员是21位独立成员,发现到现在拥有680名独立成员,以及6300名提交者
- ASF负责监督150多万行代码(价值7亿美元),开发人员超过65,000人年,平均每月提交18,000次代码
- 每月有近300名新代码贡献者和300-400名新人提交issue
如何帮助Apache基金会
Apache软基金的所接受的公司,基金会,以及个人的捐赠是可以抵税的。 你也可以通过以下方式来帮助Apache社区:
为Apache项目编写代码或者文档 成员赞助商或者独立捐献者,为基金会提供资金支持 通过企业配套捐赠–说服你的雇主参与Apache基金会捐赠的公益活动
大家可以通过捐赠,了解向Apache软件基金会捐赠的详细信息。