开源软件的发展势如破竹,全球各国的许多开源技术登上国际舞台,成为数以万计开发者协作、共享、共进的基石。在欣欣向荣态势下,也离不开遵循公开、透明、开放等理念的开源基金会的主导与治理。
作为世界最大的开源软件基金会,据 Apache 2021 财年年度报告显示,其管理着 2.27 亿行以上的代码,并且 100% 免费向公众提供价值约为 220 亿美元的软件,这些软件几乎是每一个用户计算设备上不可或缺的一部分,并使全球无数用户受益。面对如此庞大的数字与软件,Apache 软件基金会在成立的多年间,如何一步一步走到现在,又是通过什么样的治理方式促进全球开源软件发展的?
2022 年 7 月 21 日,由中国开源软件推进联盟主办,赛迪传媒、《软件和集成电路》杂志社联合承办,CSDN 独家直播的“第十七届开源中国开源世界高峰论坛”上,Apache 软件基金会总裁 David Nalley 带来了《Apache 最新进展》的主题演讲,为我们揭晓了答案。
David Nalley 表示,「Apache 现在采用的是一种分散的领导模式,这意味着项目本身可以自我管理,这也是 ASF 治理哲学的核心。其中的部分含义是,我们认识到有些工作(做贡献)的人,往往不在同一个地方,他们可能也不在同一时区。即使他们是同时同区,我们也不指望人们 24 小时都在关注一个项目,所以我们专注于所有同步通信和决策制定。」
除此之外,David Nalley 也分享了中国在国际基金会的影响力愈发重要,其指出,“4 年前我们大约有 25% 的流量来自中国,如今,这一数字超过了 40%。我们也看到了许多源自中国的项目,加入了 Apache 软件基金会,这是令人兴奋的!”
以下为 David Nalle 演讲实录:
首先,感谢大家今天让我讲话,我叫 David Nalley,是 Apache 基金会的总裁。在今天的讲话中,我想谈谈基金会的历史、理念以及关于开源发展和未来。
Apache 软件基金会这 23 年
Apache 软件基金会始于 1999 年,由一群在网上协作并为网络服务器打源代码补丁的人创建,源代码最终被称为 Apache HTTPD 项目。
在那之后的 23 年发展里,发生了很多事情,其中一个亮点是我们开发了许可证,也就是 Apache 软件许可第二版,它于 2004 年发布,并一直延续至今,成为世界上最受欢迎的开源许可证之一。Apache 2.0 授予用户广泛使用、修改和分发等权限,且拥有非常明确的专利权,同时,许可证的义务也让开源开发者们很容易满足。这使得开发者在 Apache 软件许可下,能够轻松使用和重用代码许可。
除了提供许可证,另一个亮点是 Apache 基金会制定了框架,这使得项目很容易在治理方面理解自己要的事情。这些指导方针和关键项目的架构,从需要到重新发明过程中,确定了谁做决定,以及如何做出决定。
基金会如何治理?
我从事开源项目将近二十年,以上种种都有所接触。我见过许多项目花费数月的治理,甚至很多企业、组织用数年试图弄清楚项目治理。Apache 项目从治理便开始节省了大量的时间,但更重要的是,它使项目能够将时间和精力集中在构建软件上。
现在「顺其自然」是一种很有想法的做事方式,但这只是其中之一。建立社区还有许多其他方法,以及成功运行开源项目也有行之有效的多种方式,但对于 Apache 软件基金会的项目而言,我们已经定义并选择了治理。
当然,当我谈到治理的时候,人们通常会问我,Apache 软件基金会如何处理项目管理和重点。
我倾向于从谈论基金会的使命宣言和义务开始。Apache 软件基金会是一个公共慈善机构,有义务服务于广大公众的最大利益,我们的使命是为公众免费提供软件。
我们的公共义务是所有工作的最终目标,现在回过头看,我们是如何做到的,理解这一点很重要。在项目中,我们的口号是“社区胜于代码”,虽然简短,但这意味着我们要观察那些要来做这项工作的人,我们把他们视为软件更重要的终端产品。人们聚集起来工作的想法是一个共同的主题,它贯穿了 Apache 的治理过程。
Apache 基金会关注的是贡献。无论是写软件、编写文档,或者做项目让人们获得影响力和决策权,我们不会问员工受雇于哪家公司,也不会问他们的头衔是什么,相反,我们关注的是他们在项目中所做的工作以及贡献。
简单地说,只有参与贡献的人才可以做决定,即使我是 Apache 软件基金会的总裁和 CEO,我也没有能力去告诉一个项目去采用不同的技术决定。我不能强迫他们做任何技术上的改变,我不能说员工和项目都必须这样做,所以我更不能对一个项目说“嘿,我们知道这是用 C++ 写的,但请用其他方式重写这个项目”。那不在我的职权范围内。
Apache 基金会现在采用的是一种分散的领导模式,这意味着项目本身可以自我管理,这是我们治理哲学的核心。其中的部分含义是,我们认识到有些工作(参与贡献)的人,往往不在同一个地方,他们可能也不在同一时区。即使他们是同时同区,我们也不指望人们 24 小时都在关注一个项目,所以我们专注于所有同步通信和决策制定。
我们使用每个人都能看到讨论和决策的常规工具——邮件列表。现在很多人想使用像 Slack 或微信这样的聊天工具,它们用来聊天的确很好,但并不适合做决策,因为其他人要一直往回翻阅去了解整个经过。我们内部有这样的说法,如果它(决策经过)不在邮件列表上,那它就没有发生,这也是对人们的一个提醒,我们有意将做决策推到邮件列表中,是因为大多数决策都不是立即做出的。当对某件事宣布目的之后,可能会引发一些讨论,我们会等待,并听取其他意见。因为我们认识到过快地做决策,可能会把一些人排除在外。
中国开源力量不断加强
在过去的 23 年里,Apache 软件基础已经发生了很多变化,但治理方式基本保持不变。我们的规模已经从 1999 年的一个项目成长到今天的数百个项目,其中包括一些非常知名和成功的项目,如Tomcat、Hedu、Spark、Kalin、Caassandra、Sky Walking 等等。还有大约 30 个项目在孵化中,孵化器就是孵化那些对于 Apache 软件基本金还比较新的项目,这样它们就能适应我们的流程管理,也为了孵化后成为顶级项目而做准备工作。
如今的 Apache 软件基金会也愈发国际化,中国是其中重要的一部分。4 年前我们大约有 25% 的流量来自中国,如今,这一数字超过了 40%。这几年间,我们看到了许多源自中国的项目加入了 Apache 软件基金会,这是令人兴奋的。不仅仅是因为我们有更多的项目和更多的人参与,而是因为我们看到了更广泛的人群,他们最终会让我们的软件变得更好。
我鼓励大家加入我们,为那些对你们很重要的项目作出贡献,帮助我们共同建构开源的未来。
谢谢大家!
扫描下方二维码,观看精彩回放!
— 推荐阅读 — 《新程序员001-004》已全面上市
今天订阅即有机会获取『CSDN夏季定制T恤』一件
扫描下方二维码或点击进入立即订阅