声明:非原创,采用了以下资料:
-
开源中国/GOTC-开源长廊 gitee.com/oschina/got…
-
Koala聊开源 space.bilibili.com/489667127
-
InfoQ www.infoq.cn/
-
中国开源年度报告kaiyuanshe.cn/document/ky…
-
开源软件指南 opensource.guide/zh-hans/
开源起源
1. RMS 与自由软件运动
1983 年 —— GNU 计划创立
理查德·马修·斯托曼(Richard Matthew Stallman,简称 RMS)认为:软件本该共享。他担心如果专有软件成为社会主流,会出现少数强力人物统治计算机工业的局面。为了捍卫软件的自由,RMS 决定重新开发一个完全由自由软件构建的操作系统,并将其命名为「GNU 计划」。
1983 年,RMS 在 net.unix-wizards 和 net.usoft 新闻组中公布「GNU 计划」,并借此发起自由软件运动。
自由软件
自由软件的定义最初由 RMS 本人制定。自由软件的初衷是尊重用户的自由,并且尊重整个社区。粗略来讲,一个软件如果是自由软件,这意味着用户可以自由地运行、拷贝、分发、学习、修改并改进该软件。因此,「自由软件 (Free Software)」中的"free"是关乎自由的问题,与价格无关,软件如何定价并不影响它是否被归类为自由软件。具体来说,自由软件的用户拥有四项基本自由:
(0)自由运行软件
(1)自由学习和修改软件源代码
(2)自由发布软件拷贝
(3)自由发布修改后的软件版本
GNU GNU 是"GNU's Not Unix"的首字母递归缩写,意思是虽然 GNU 的设计与 UNIX 类似,但它不包含具有著作权的 UNIX 代码。它的发音为"Guh-NOO",普通话可音译为“哥怒”。
1984 年 —— RMS 提出 Copyleft
Copyleft 是源自自由软件运动的概念,是一种利用现有著作权体制来保护所有用户和二次开发者的自由的授权方式。
Copyleft 中的"Left",不使用英语中“保留”的意思,而是指“Left(左)”,与“版权(Copyright)”中的“Right(右)”具有镜像的关系。
二者的区别可总结为:"Copyright"指软件的版权和其它一切权利归软件作者所私有,用户只有使用权,没有其它如复制、重新修改发布等权利。而"Copyleft"的特点是仅有版权归原作者所有,其他一切权利可以与任何人共享。
1985 年 —— 自由软件基金会成立
在那个年代,任何排得上号的操作系统都包括命令解释器、汇编器、编译器、调试器、文本编辑器和电子邮件软件包等等。而开发一个操作系统是一个巨大的工程,耗时良久。为了能够实现这些目标,RMS 成立了自由软件基金会(Free Software Foundation,简写为 FSF),开始为「GNU 计划」募集基金。同时为「GNU 计划」提供技术、法律等支持。FSF 是历史上首个围绕自由与开源软件展开工作的公益性组织。
1989 年 —— RMS 组织律师起草及发布 GPL
GNU 通用公共许可证 (GNU General Public License),简称 GPL,是历史上首个开源软件许可协议。GPL 的出现为开源软件的版权带来了明确的定义,从法律层面实现了"Copyleft"概念的落地,也在不同程度上影响了后续出现的一系列开源软件许可协议。目前被广泛使用的 GPL 版本是 GPLv3。
RMS 在美国麻州剑桥的麻省理工学院起草了第一份 GNU GPLv3 草案,在他右手边的是哥伦比亚法律教授伊本·莫格林——软件自由法律中心创始人及主席。
除了 GPL,目前主流的开源许可证包括:AGPL、Apache License、MIT License、BSD License、LGPL、MPL、EPL、Zlib License 等。
开源许可证介绍: opensource.org/licenses
2. Linus Torvalds 与 Linux 的诞生
1991 年 —— Linux 内核诞生
1991 年,21 岁的芬兰学生 Linus Benedict Torvalds 在 comp.os.minix 新闻组宣布 Linux 项目,并将源代码分享到了互联网上。
由于 Linux 具有结构清晰、功能简捷等特点,吸引了许多高校的学生和科研机构的研究人员把它作为学习和研究的对象。他们在更正原有 Linux 版本中问题的同时,也不断地为 Linux 增加新的功能。在众多热心者的努力下,Linux 逐渐成为一个稳定可靠、功能完善的操作系统内核,并顺理成章地成为了 GNU 计划中的操作系统内核。
以 Linux 内核+ GNU 自由软件组成的 GNU/Linux 操作系统成为了具有共享精神的开发者们进行自由软件开发的平台,越来越多的自由软件在 GNU/Linux 上被开发出来。
与此同时,来自全球各地的开发者加入到 Linux 社区中贡献代码,共同优化 Linux 内核,日常开发相关的讨论也在 Linux 内核邮件列表上进行。
1994 年 —— Linux 内核 1.0 发布
1994 年 3 月 14 日,Linux 内核 1.0 正式发布,共包含 176,250 行代码。随后的 1995 年 3 月,包含 310,950 行代码的 Linux 内核 1.2.0 发布。
3. OSI 与「开源」的定义
1997 年 —— ESR 开始撰写《大教堂与集市》
1997 年,Linux 的一名开发者 ESR (Eric Steven Raymond) 陆续在网上发表了一些对 Linux 协作模式的洞见,后集成出版为《大教堂与集市》,该书被誉为“开源界圣经”、“开源运动的独立宣言”。
本书介绍了 Linux 的开源与协作模式,ESR 断言是这样的新式开发方式,使得 Linux 得以在专有软件盛行的背景下快速发展。它实用主义的角度给了一些人以启发,他们希望剔除自由软件概念中激进的东西,从实用的角度重新阐述自由软件的理念,让软件拥有更好的商业前景。
1998 年 —— 开放源代码促进会 (OSI) 成立
下面这张照片是 1998 年举办的"Open Source Summit"的会后合影。这场会议聚集的顶尖开源倡导者,以及其他开源先驱参与推动了 OSI 的创立,规范了「开源 (Open Source)」一词,并为开源软件的标准提出了明确的定义 (Open Source Definition, OSD)。
OSD
| 条款 | 简单说明 |
|---|---|
| Free Redistribution | 允许自由地再发布软件 |
| Source Code | 程序必须包含所有源代码 |
| Derived Works | 可以修改和派生新的软件 |
| Integrity of The Author's Source Code | 发布时保持软件源代码的完整性 |
| No Discrimination Against Persons or Groups | 不得歧视任何个人或团体 |
| No Discrimination Against Fields of Endeavor | 不得歧视任何应用领域(例如商业) |
| Distribution of License | 许可证的发布具有延续性 |
| License Must Not Be Specific to a Product | 许可证不能针对于某一个产品 |
| License Must Not Restrict Other Software | 许可证不能限制其他软件 |
| License Must Be Technology-Neutral | 许可证必须是技术中立的 |
OSI 即开放源代码促进会(Open Source Initiative,缩写为 OSI),又译作开放源代码组织,是定义「开源」的非盈利组织,旨在推动开源软件发展。
4. 开源协作与开源硬件
Linus Torvalds 曾说过,开源理念之一就是非常鼓励不同人的人一起合作。时至今日,「开源」不仅仅只应用于开发领域,在硬件、书籍和在线社区等其他方面都有广泛的应用。OSI 目前已经认证了欧洲核子研究组织(CERN)的开放式硬件许可证,将它们定义在“开源”范畴。
开源协作
wuhan2020 项目
2020 年疫情期间,开源社区组织起了 wuhan2020 项目,这是一个新型冠状病毒防疫信息收集平台。采用开源协作的方式,收集各医院、酒店、工厂、物流、捐赠、捐款、预防、治疗、动态等信息,统一收集,统一发布,并利用开源和分布式协作优势实时更新并通报,提供各方的联系平台,以便各方之间进行信息互通,有效调配社会资源。
开源硬件
开源硬件是可以通过公开渠道获得的硬件设计,任何人可以对已有的设计进行学习,修改,发布,制作和销售。硬件设计的源代码的特定的格式可以为其他人获得,以方便对其进行修改。理想情况下,开源硬件使用随处可得的电子元件和材料,标准的过程,开放的基础架构,无限制的内容和开源的设计工具,以最大化个人利用硬件的便利性。开源硬件提供人们在控制他们的技术自由的同时共享知识并鼓励硬件设计开放交流贸易。
F1 团队支持赛车零件开源设计提案
国际汽联 FIA 计划在 2021 年进行全面规则更改,包括标准化一些零件以降低成本,由于担心标准零件可能会带来可靠性问题,并且可能需要花费额外的费用来验证设计,于是有人提议使用开源的概念作为替代解决方案。具体来说,这需要车队在线发布某些零件的设计,从而允许其他人模仿创建并以不同的方式实现标准化零件。
国际开源趋势
1. 国际开源基金会
从 RMS 创立 FSF 发起自由软件运动,再到 OSI 成立并明确开源软件定义,这种崇尚开放协作的软件开发模式迅速席卷全球。
除 FSF 与 OSI 外,还陆续诞生了许多致力于推广和发展开源的基金会。
开源基金会对于开源软件和开源社区的组织、发展、协同创新提供了主导作用。开源基金会遵循公开、透明、开放等理念,为开源软件的孵化提供技术、运营、法律等全方位支持,为开源的社区建设和运营提供指导,发挥了孵化器和加速器的作用,开源基金会已成为开源生态最重要的组织者。
- 1985 年 —— 自由软件基金会成立
- 1999 年 —— Apache 软件基金会成立
- 2000 年 —— Linux 基金会成立
- 2000 年 —— GNOME 基金会成立
- 2003 年 —— Mozilla 基金会成立
- 2004 年 —— Eclipse 基金会成立
- 2006 年 —— Blender 基金会成立
- 2014 年 —— .NET 基金会成立
- 2015 年 —— 云原生计算基金会成立
- 2015 年 —— 超级账本 (Hyperledger) 成立
- 2015 年 —— RISC-V 基金会成立
- 2019 年 —— OpenJS 基金会成立
- 2020 年 —— TARS 基金会成立
- 2020 年 —— SODA 基金会成立
- 2020 年 —— 开放原子开源基金会成立
- 2021 年 —— Rust 基金会成立
2. 国外积极参与开源的公司
3. 开源领域代表人物
开源让技术跨越了时间和空间的限制,任何人都可以自由使用和贡献开源软件。开源改变了世界,我们希望在这里记录下开源软件代码背后的人,记录下为开源革命铺平道路的先驱者,记录下为开源做出重大贡献的英雄。
RMS
Richard Matthew Stallman(理查德·马修·斯托曼,简称 RMS)是公认的自由软件之父,他创立了自由软件基金会 (FSF),发起了「GNU 计划」(打造一个完全由自由软件构建的操作系统),同时还是 Emacs、GCC 和 GDB 等重要开源项目的作者。
除了软件方面的巨大贡献,RMS 在哲学层面对自由软件的推广和追求更是为「开源」奠定了思想基础。
Linus Torvalds
Linus Benedict Torvalds 因创造了两个伟大的项目 —— Linux Kernel 和 Git 而被大家熟知。但他对开源的贡献不限于代码,在倡导开源运动和开源精神、以及运作和管理大型开源项目等方面,Linus 都做出了巨大贡献。
Linus 还创造了不少为人称道的金句,最有名的莫过于"Talk is cheap, Show me the code"。
ESR
Eric Steven Raymond(以姓名缩写 ESR 作为黑客代号)是开放源代码运动的主要领导者之一,同时也是 OSI 的核心创办人,他撰写的《大教堂与市集》被认为是“开源圣经”,其另一部作品《Unix编程艺术》也是一本经典著作。
ESR 的名言“足够多的眼睛,就可让所有问题浮现” (Given enough eyeballs, all bugs are shallow),对开放源代码运动影响很大,这亦即著名的林纳斯定律 (Linus' Law),含义是软件开发测试人员数量对软件开发质量意义重大。
Bruce Perens
Bruce Perens 是 OSI 联合创始人,与 ESR 共同创立了 OSI,并创造了对「开源」影响深远的 「Open Source Definition(开源定义)」。他也是前 Debian 计划的领导者、自由软件社区的顾问。
Jim Zemlin
Jim Zemlin 是 Linux 基金会执行董事,他运用自己的经验并通过使用开放源代码和 Linux,加速技术创新,任职期间,Linux 基金会对于开源在全球的影响力,产生了无可比拟的推动作用。
Aaron Hillel Swartz
Aaron Hillel Swartz 是知名开源 Web 框架 web.py 的作者,他参与开发了 RSS 消息来源发布格式、Markdown 文本格式、知识共享组织,同时是社交媒体 Reddit 的联合创始人。他一生都在致力于让信息更容易获取、更加自由,其本人于 2013 年去世,享年 26 岁。
Brian Behlendorf
Brian Behlendorf 是一名技术专家和开源布道师,也是 Hyperledger 超级账本的执行董事。他是著名开源软件 Apache Web 服务器的主要开发者,也是 Apache 软件基金会的创始成员。Apache Web 服务器是互联网上最受欢迎的 Web 服务器软件。
Brian 自 2003 年起担任 Mozilla 基金会董事会成员,自 2013 年起担任电子前沿基金会成员。他是 CollabNet 的创始首席技术官和 World Economic Forum 世界经济论坛的首席技术官。最近,Brian 在纽约时报中被评为区块链行业中最有影响力的十大人物。
Kenneth Lane Thompson
Kenneth Lane Thompson(通常被称为"Ken")设计和实现了 Unix 操作系统,创造了 C 语言的前身 —— B 语言,此外还是 Plan 9 操作系统的创造者和开发者之一。2006年,Ken 进入 Google 与他人共同设计了 Go 语言。他还参与过正则表达式和 UTF-8 编码的设计,改进了 QED/ed 编辑器,以及创造计算机国际象棋 Belle。
Dennis MacAlistair Ritchie
Dennis MacAlistair Ritchie 被认为是 C 语言之父(通常被称为"dmr"),同时也是 Unix 系统的关键开发者,这两项工作对计算机领域产生了深远的影响。他与 Ken 同为 1983 年图灵奖得主,其本人于 2011 年去世。
Bill Joy
Bill Joy 真名为 William Nelson Joy,他在伯克利加州大学读研究生时创建了 BSD(Berkeley Software Distribution,缩写为 BSD),也是 vi 文本编辑器和 Unix 系统的 C shell (csh) 的创造者。
Joy 作为联合创始人和首席科学家参与了 Sun 微系统公司的成立,设计了 Sparc 微处理器,并将之前自己领导开发的 BSD 继续发展成为 Solaris 操作系统。另外,他还是 Java 和 Jini 的主要作者之一。
Jordan Hubbard
Jordan Hubbard 是 FreeBSD 的联合创始人,曾就职于苹果公司担任 Unix 技术总监,负责 OS X 操作系统底层核心 Darwin 的研发,以实现在 Mac 设备中运行 BSD。
Brendan Eich
Brendan Eich 是一位计算机科学家,同时也是 JavaScript 创造者,他任职于网景期间为网景浏览器开发出 JavaScript,这门仓促创造的语言日后成为了开发网页应用最广泛的语言。此外,Eich 还共同创立了 Mozilla 项目,并协助成立 Mozilla 基金会。
Daniel Stenberg
Daniel Stenberg 是知名开源项目 cURL 作者,也是目前的核心贡献者。Daniel 曾就职于 Mozilla, 后加入 wolfSSL 为 curl 提供商业支持,并尽可能全职从事 curl 的工作。他活跃于 IETF 以及 HTTP/2 和 QUIC 工作组的其他部分,并为多个 RFC 做出了贡献。
Matt Mullenweg
Matt Mullenweg 是最流行的博客建站程序 WordPress 的创始人。从 CNET 辞职后,他把主要的精力放到了开源程序的开发以及各类报告会上。
Fabrice Bellard
Fabrice Bellard 是一位著名的法国计算机程序员,其个人成就令人惊叹。在许多人眼里,他是一个非人类的存在,似乎拥有某种超能力,使他超越了人类所能达到的极限。
Fabrice Bellard 创造了许多对业界各个领域都产生非常深远影响的开源项目,如 FFmpeg、TingCC 和 QEMU 等项目均出自他手。
Dan Kohn
Dan Kohn 是 CNCF 的前执行董事,他担任 CNCF 执行董事期间一直在致力于推广云原生技术,并积极参与开源社区。Kubernetes 和 Kubernetes 认证服务供应商等标准化认证计划在 2017 年启动,并得到整个行业众多公司的广泛支持。2020 年,Dan Kohn 因结肠癌病逝。
Ian Murdock
Ian Murdock 是 Linux 发行版 Debian GNU/Linux 创始人,他在美国普渡大学学习期间写作了《Debian宣言》,并创建了世界上第一个发行版 Debian,Debian 得名于他和当时的女友 Deborah Lynn 的名字组合。2015 年 Ian Murdock 被发现在旧金山的家中离世。
4. 重要的开源项目
- Linux Kernel
- GCC
- Git
- Nginx
- OpenSSL
- TensorFlow
- PyTorch
- MySQL
- Chromium
- AOSP
- Redis
- Kubernetes
- Hyperledger Fabric
- FFmpeg
国内开源发展
见标题链接
值得关注的五个变化
from 解读开源的 2021:从“开发者亚文化”,变成主流软件开发模式
1. 开源上升至国家级别的战略高度
2021 年,多国发布政策将开源提升至国家级别的战略高度,肯定了开源模式对信息技术创新和软件产业发展的重要性,并将发展开源、繁荣开源生态作为一项重要任务。
2021 年 9 月,欧盟委员会(European Commission)发布《欧盟经济中开源软硬件对技术独立、竞争力和创新的影响研究》报告,对开源软件(OSS)、开源硬件(OSH)如何推动欧盟经济复苏、数字化转型、数字自治等进行了系统性研究。报告中提到,针对开源软件的投资,平均可带来四倍的回报。据研究结果预测,如果欧盟的开源贡献增加 10%,该地区的 GDP 将增加 1000 亿欧元,是欧盟开源软件价值的两倍多。同时,每年还会新增 600 多家 ICT 初创公司。
2021 年 12 月 8 日,欧盟委员会(European Commission)宣布,其正在采纳有关开源软件的新规则,只要对民众、公司或其他社会公共服务有潜在益处,就可以公开访问其软件解决方案。根据新规则,委员会将通过开源其软件解决方案为公司、初创企业、创新者、公共行政部门等带来重大价值,这一决定也将刺激创新。
国内,开源被写入《“十四五”软件和信息技术服务业发展规划》,可以说是 2021 年关注度最高的大事件。
2021 年 11 月 30 日,工信部信息技术发展司发布《“十四五”软件和信息技术服务业发展规划》(下面简称《规划》),将“开源重塑软件发展新生态”作为“十四五”期间我国软件产业的四大发展形势之一进行重点阐述。《规划》强调,开源模式已成为全球软件技术和产业创新的主导模式,可以说“软件定义未来的世界,开源决定软件的未来”。《规划》同时提出了“繁荣国内开源生态”的重点任务,并设置“开源生态培育”专项行动,统筹推进建设高水平基金会,打造优秀开源项目,深化开源技术应用,夯实开源基础设施,普及开源文化,完善开源治理机制和治理规则,加强开源国际合作,推动形成众研众用众创的开源软件生态。
这将会对中国开源的长期发展产生非常深远的影响,受访嘉宾向 InfoQ 表示:
“可以看到政府在开源层面的支持力度越来越大,特别是在解决软件供应链问题上,从政府,到企业,到开发者,都坚定地认为开源是必选项。只有市场认可的软件、有用户规模的软件才能产生巨大的商业价值和社会价值,而开源是达成这个目标的最优路径。”
“随着《规划》的出台,期望并相信中国开源能从无序繁荣向有序繁荣演进。”
2. 中国开源影响力逐步提升
据最新的 GitHub 年度开发者报告,2021 年 GitHub 上的中国开发者新增了近 103 万,累计约 755 万,越来越多来自中国的开源爱好者参与到各种开源项目中。
在 Apache 软件基金会、Linux 基金会、CNCF 等国际开源基金会中,源自中国的开源项目越来越多。今年 Apache 软件基金会迎来了 5 个来自中国的开源项目,分别是 EventMesh、ShenYu、Kyuubi、Linkis、SeaTunnel,单论数量应该是历年之最。
同时,更多中国企业和开源人士在国际基金会承担重要角色:
- 2021 年 2 月 9 日,Rust 基金会正式成立,华为是创始白金成员之一;
- 2021 年 3 月 11 日,Apache 软件基金会官网公布新一届董事名单,Tetrate.io Founding Engineer、ApacheSkyWalking 创始人和 PMC 吴晟成为本届唯一一位新晋董事;
- 2021 年 8 月,Linux 基金会成立开源安全基金会 OpenSSF,2021 年 10 月,腾讯成为中国第一家加入 OpenSSF 的企业;
- 2021 年 11 月 2 日,Linux 基金会成立下一代架构(NextArch)基金会,腾讯作为创始企业加入;
- 2021 年 11 月,开放原子基金会 TOC 主席、Apache 软件基金会 Member、华为云与计算开源业务总经理堵俊平当选 LF AI & Data 基金会董事会主席;
- 2021 年 11 月 24 日,腾讯云加入 FinOps 基金会成为顶级会员,腾讯开源联盟主席单致豪和腾讯云专家工程师孟凡杰亦分别进入 FinOps 基金会的理事会和技术咨询委员会(TAC);
- 华为开源能力中心工程师王晔晖当选 Linux 基金会 CHAOSS 项目董事会董事。
上述这些都表明,中国开发者和开源项目在开源世界的影响力正在不断提升。我们有理由相信,随着中国开源的发展,今后将会出现越来越多高质量的中国开源项目和开源社区,并涌现出更多中国开源人才。有受访专家表示:“过去几年中国开发者已经逐步从开源的使用者变为贡献者,如果我们过几年再回头看,今天可能会是整个中国或者以中文作为主流交流语言的开发体系的一个新元年,即中国开发者开始真正去主导一些核心平台级软件产品或技术方向了。”
但同时我们也需要看到,中国开源影响力目前还有很大的提升空间,正如《“十四五”软件和信息技术服务业发展规划》解读中提到的,国内开源生态建设尚处于起步阶段。有受访专家向 InfoQ 直言:“我们可能还处在‘觉醒年代’或萌芽阶段,虽然 GitHub 数据显示中国开源贡献者数量已经跃居全球第二,但这可能在一定程度上是得益于人口红利。”
根据 X-lab 开放实验室 2021 年 10 月发布的《中国十年开源洞察报告》,虽然国内开源热度不断提升、中国开源开发者数量飞速增长,但在国内的开源项目中仍是中国开发者比例更高,国际化程度需要加强。就项目数量和开发者活跃度而言,目前仍是头部互联网大厂在引领国内开源。
有数据显示,国内 96.6%的 500 强企业不了解开源,仅 2%的 500 强企业参与开源贡献。相比而言,79.2%的世界 500 强企业了解开源,22%的世界 500 强企业参与开源贡献。
3. 开源治理和开源合规成为焦点议题
2021 年接近尾声之时,Apache Log4j2 CVE-2021-44228 安全漏洞在开源圈甚至整个 IT 圈炸起一声惊雷。由于漏洞利用门槛不高且 Log4j 应用范围极广,这次安全漏洞事件引发的影响十分深远,国内外大批企业受到波及。
近些年,在开源高速发展的同时,开源软件安全事件也频繁发生,开源软件供应链治理至关重要。Log4j2 安全漏洞事件进一步让大家意识到了这一重要性,并引发了一场关于开源软件供应链安全的大讨论,对开源软件漏洞发布流程合理性的思考、对背后的开源项目及基金会组织等探讨也非常白热化。
围绕开源治理的议题,过去一年,Linux 基金会积极推动 OpenChain 国内外社区接轨与交流,中国信通院与诸多国内企业均密切关注或加入其中。此外,企业如何开源、项目开源流程、开源项目度量等问题也是产业界关注的焦点。基于量化模型的方式对社区治理效果进行各项评估,成为越来越多成熟开源组织的“标配”。Linux 基金会也推动成立了度量开源项目与社区健康度的开源项目 CHAOSS,值得关注。
另一方面,随着各行各业越来越多地使用开源代码,一些开源项目已成为“大生意”,围绕开源法务和合规话题的讨论被越来越多地摆上台面,成为核心议题之一。过去一年,围绕开源项目商标、开源许可协议的事件和争议就有好几起。
2021 年 1 月 20 日,Elastic 公司 CEO Shay Banon 在公司官网发文表示,他们决定将 Elasticsearch 和 Kibana 的开源协议由 Apache 2.0 变更为 Server Side Public License(SSPL)与 Elastic License 双许可。此举目的是限制云服务提供商在没有回馈开源社区的情况下,将 Elasticsearch 作为一项服务提供给他人使用并从中盈利,背后是 Elastic 与亚马逊多年的交锋。\
2015 年,亚马逊推出自家的 Elasticsearch 服务,并将其定名为 Amazon Elasticsearch Service。在 Elastic 看来,亚马逊擅自在自家托管服务名中使用“Elasticsearch”一词,属于明显的商标侵权,并在市面上引发了关于 Elasticsearch 归属权的混乱,于是 Elastic 在 2019 年起诉亚马逊。
但因为诉讼进程缓慢,Elastic 主动更改许可证,加快亚马逊远离 Elasticsearch 品牌的步伐。这一行动确实奏效了,2021 年 9 月,Amazon Elasticsearch Service 更名为 Amazon OpenSearch Service。亚马逊高管也表示,将加紧建立并维护开源 Elasticsearch 与 Kibana 的 ALv2 许可分支。
实际上,不管是 SSPL 还是 Elastic License,都不符合 OSI 的开源定义,因此 Elastic 宣布变更开源协议在社区引发了巨大争议。
其他类似事件还有:国外数据查询引擎 Presto 创始团队宣布将 PrestoSQL 更名为 Trino,原因是 Facebook 注册了 Presto 商标;国内分析型数据库系统 DorisDB 更名 StarRocks(是否涉嫌侵权 Apache Doris 商标不得而知),同时高调宣布采用 Elastic License 2.0(ELv2)许可(同样不符 OSI 开源定义)“开源”而引起业界非议。
许可证争议和商标纠纷在开源领域无处不在,如何判断开源许可的合理性和潜在风险?宽松许可如何保护开源项目创始团队的权益?云厂商和开源社区之间的利益如何平衡?目前这些问题都还没有令人满意的回答,预计混乱和讨论未来还会继续。
2021 年 6 月,由广东省深圳市中级人民法院审理的 GPL 著作权纠纷案件,被认为是明确 GPL-3.0 协议法律效力的国内首案。这个判例或将有助于未来开源社区维权,不过也有观点认为这其实是对代码合规提出了更高的要求。
4. 开源创企空前活跃,商业价值得到资本认可
过去一年,国内外基于开源项目的初创企业空前活跃,获得融资或上市的情况屡见不鲜,且融资金额和估值/市值不断刷新上限,开源社区和开源软件的商业价值在资本市场得到认可。
受访专家向 InfoQ 表示,“这些公司获得融资或上市标志着,开源软件终于在云原生时代找到了一个好的商业模式,解决了商业化的问题。2021 年会成为中国开源进入主流商业世界的元年。”
以下是对 2021 年开源创企融资和上市情况的不完全统计:
2021 年上市开源企业:
- 5 月,企业级开源 Linux 操作系统供应商 SUSE 上市,市值近 70 亿美元
- 6 月,Apache Kafka 背后商业化公司 Confluent上市,首日开涨 25%,市值超过 110 亿美元
- 10 月,开源代码托管平台 GitLab上市,以上市当日收盘价计算,GitLab 市值为 148.58 亿美元
- 12 月,聚焦云基础设施、DevOps 的开源软件公司 HashiCorp 上市,市值 153 亿美元
2021 年开源企业融资情况:
-
2 月,一流科技 OneFlow(开源深度学习框架 OneFlow) 完成 5,000 万人民币 A 轮融资
-
3 月,深圳支流科技 API7(基于 Apache APISIX 项目)完成数百万美金 Pre-A 轮以及 A 轮融资
-
4 月,上海硅智信息技术 Kyligence(基于 Apache Kylin 项目)完成 7,000 万美元 D 轮融资
-
5 月,北京思斐软件 SphereEx(基于 Apache ShardingSphere 项目)完成数百万美元天使轮融资(截至发稿前,2022 年 1 月,SphereEx 又完成了近千万美元 Pre-A 轮融资)
-
5 月,涛思数据 TaosData(开源物联网大数据平台 TDengine) 完成 4,700 万美元 B 轮融资
-
6 月,鲸鲮科技(基于 Linux 的开源操作系统 JingOS)获创新工场领投 1000 万美元天使轮融资
-
8 月,大数据开源项目 Spark、Delta Lake 背后的商业公司 Databricks 获得 16 亿美元 H 轮融资,最新估值飙升至 380 亿美元,距离上一轮 10 亿美元的G轮融资仅仅过去 7 个月时间
-
9 月,开源 OLAP 分析引擎 ClickHouse独立成立公司,同时获得 5000 万美元 A 轮融资,Yandex 也参与其中
-
10 月,基于 Apache Pulsar 的商业化公司StreamNative获得 2300 万美元 A 轮融资\
-
11 月,白鲸开源(基于 Apache DolphinScheduler)获得数百万美元种子轮融资
-
12 月,Cockroach Labs 再获 2.73 亿美元F轮融资,估值达到 50 亿美元,同年 1 月 Cockroach Labs 才刚获得 1.6 亿美元融资
5. 开源成为基础软件研发的主流
由于市场和技术的双向选择,开源已经成为基础软件研发的主流,甚至是必选项,这一趋势在操作系统和数据库领域尤其明显。
操作系统层面,随着云边端协同成为计算架构发展的下一个趋势,催生了对操作系统的新需求,即要能够同时支持多样化的硬件架构。此外,2020 年底,RedHat 宣布将在 2021 年底结束对 CentOS 8 的支持,全球用户开始尝试寻找合适的操作系统进行替换。及时解决用户在 CentOS 退出后可能面临的风险、为用户提供更多选择,成为操作系统厂商和研发人员努力的方向,而开源又成为操作系统研发的首选模式。
继 2019 年华为开源自研操作系统 openEuler 之后,2021 年 10 月,龙蜥社区在阿里云云栖大会上首次登台,全新龙蜥操作系统 Anolis OS 也重磅亮相,并宣布完全开源,以中立社区的方式运作。
2021 年 11 月 4 日,龙蜥宣布将捐赠给开放原子开源基金会孵化,基金会技术监督委员会已全票同意接收龙蜥操作系统为基金会项目。11 月 9 日,欧拉官宣正式捐赠给开放原子开源基金会孵化。目前,龙蜥社区(OpenAnolis)已拥有 50 多家生态企业,openEuler 社区已经有 300 多家企业、近万名社区开发者加入。在捐赠给开放原子开源基金会后,英特尔也正式签署贡献者许可协议加入 openEuler 开源社区。
2021 年 12 月 22 日,国产开源操作系统社区 OpenCloudOS 正式成立。腾讯、宝德、北京初心、北京红旗、飞腾、浪潮、龙芯中科、OPPO、先进开源、中电科申泰、中科方德、兆芯等 20 余家操作系统生态厂商及用户成为首批创始单位。在成立之初,OpenCloudOS 就决定成为无厂商标签的中立社区,未来也将成为开放原子开源基金会的一员,由基金会托管和监督,以标准开源社区模式运作。
目前,开放原子开源基金会官网展示的孵化项目中已经有 4 个国产开源操作系统项目,分别是 openEuler、OpenHarmony、TencentOS Tiny、AliOS Things,未来预计还会加入龙蜥操作系统(Anolis OS)和 OpenCloudOS。
数据库作为核心基础软件,同样需要借助开源模式进行快速打磨和迭代。2021 年,蚂蚁集团自研分布式数据库OceanBase、阿里云云原生分布式数据库 PolarDB-X相继宣布开源。
“中国有很多分布式数据库的应用场景,正因为有了需求才会有匹配这种需求的产品,这些场景给产品带来了很多锻炼和打磨。中国市场的需求又是巨大的,如果没有开源,很难有一款产品可以以现在的迭代和扩张速度去支撑中国市场的场景爆发。所以开源是中国当下新一代数据库发展的最优选择。” 受访专家表示,开源还可以作为一座桥梁,将互联网公司里优秀开发者沉淀出来的产品特性传输到金融行业以及传统行业中。
开源变现方式
1. 商业化
开源商业化模式共有五种:支持、托管、限制性许可、开放核心、混合许可
在转化阶段,相比较传统商业软件,开源软件往往拥有更高的付费转化率
案例1: Vercel
Vercel 与 Next.js:开源全明星团队背后的商业逻辑
Vercel 是一个云部署平台,有开源项目 Next.js,平台与 Next.js 等框架深度集成,可以一键部署发布。
招聘挖掘了不少开源人才:
- create-react-app 核心维护者 Joe Haddad
- webpack 的创造者 Tobias Koppers
- SWC 的作者 Donny(SWC 是一个使用 rust 开发的 babel 替代品,并且有高达数十倍的性能优势)
- monorepo 构建工具 Turborepo 项目创始人 Jared Palmer
- React 核心团队的灵魂人物 Sebastian Markbåge
- Svelte 作者
案例2: PingCap
其次,从全世界角度来看,在数据库领域不开源是没有机会的,因为大家之前已经经历过被 IBM、Oracle 等厂商绑定、难迁移的痛苦历史,开源是解决这个问题的唯一方案,大家都不会愿意自己重新被绑定到一个新的厂商身上。
这也是我们选择用开源的模式来做这件事的原因。
2021 中国开源年度报告中资料:
2. 赞助
案例1:Vue.js 个人开源典范的 Vue.js 可被模仿吗? 案例2: Caleb Porzio 的开源变现三步曲
3. 开源书籍 -> 出版变现
案例1: 李笑来
4. 个人影响力 -> 教育变现
案例1: 大圣
项目:大圣的前端学习路线图
参与开源的相关数据
from 中国开源年度报告 2021
如何参与开源?
-
开源软件指南 opensource.guide/zh-hans/
以我自己写的前端插件 vite-plugin-ali-oss 举例,经历了以下步骤:
- 业务有需求,查找社区中没有靠谱合适的插件,决定自己写
- 根据 vite 社区规范命名,并且在发布平台 npm 查询保证不重名
- 创建 github 仓库,开发,编写代码、创建测试用例 examples 自测
- README.md —— 写中文文档,并且翻译为英语文档,社区要求必须有英语文档
- 创建 npm 账户,按社区要求编写版本号,最开始 0.1.0 最佳。第一位表示大版本,有破坏性修改,1 表示正式版。第二位表示小版本,增加新功能。第三位表示修复bug。
- npm publish 发布
- 调整功能、修复问题
- CHANGE_LOG.md —— 写更新日志
- 更新版本号,再次发布
- 增加 github action,自动发布
- awesome-vite 去提交 PR 申请收录,成为生态的一部分,被更多人看到