前天的一则新闻“F5 禁止俄罗斯为 NGINX 开源项目作贡献,并暂停了在俄业务”,引发了微信好友的热烈讨论。
NGINX 最初由俄罗斯工程师 Igor Sysoev 开发,后来 NGINX 背后的公司被 F5 以 6.7 亿美金收购。F5 因此还被 Igor Sysoev 的前雇主俄罗斯互联网公司 Rambler 起诉,Rambler 认为自己拥有 NGINX 项目。
NGINX 项目本身的俄罗斯背景,使得 F5 这次的表态引起了不少的讨论。非常时期,F5 的这种行为也非个例。之前另一家源于俄罗斯的公司 ClickHouse 也被逼着表态、站队。
虽然 F5 的行为可以被理解,但有一个问题是,F5 是否有权利做出这样的决定?任何开源项目,必须遵循由 Open Source Initiative (OSI) 所制定的“开源定义”[1]。而“开源定义”的第 5 条[2]就是不得歧视任何人与组织。
这里进一步引出了另一个问题:为什么“开源”是由 OSI 定义的?“开源”不是讲究自由与开放吗?对于“开源”我们能不能有不同的解读?
答案是不可以。
因为 Open Source 本身就是一个注册商标,要使用它,必须遵循 OSI 给出的定义,比如使用 OSI 认可的许可证协议。所以“开源”的定义是一种强制性的共识。你如果不认可这个定义,那么就不要认可“开源”,你可以使用别的字眼。比如 Elastic 改了许可证以后,开始使用“源码可用” (source available) 来代替“开源”。
有人可能会说,“开源”如此重要,怎么可以被一家美国组织所定义呢?
在知识产权保护非常发达的地区,通过注册商标、成立基金会来保护并推广一个理念是一种常见的做法。“开源”之所以如此重要,就是因为过去 20 多年 OSI 花了大量的心血来保护与推广它。OSI 成立的初衷便是要守护“开源”这个理念,防止诸如微软这样的公司扭曲“开源”的定义。
我们不能看到别人成果还不错,就跑过去用“演义”的方式来获取话语权。
附录
[1]: 美国法院最新判决:未经 OSI 许可的开源是「假开源」!
[2]: The Open Source Definition