近日,中国电子书厂商Oynx拒绝开源其基于Linux 内核修改的设备源码,这一做法违反了Linux的GPL协议,在Reddit社区引发了开源软件如何在中国维权的大讨论。
凭心而论,阿里、腾讯、百度等大厂近些年来在开源方面贡献都很大,Oynx拒绝开放源码的行为可能纯属是个例,即使我们开源了飞浆、RocketMQ等多个优秀的开源软件,也无法对冲不遵守开源规则所带来的恶劣影响。这已经不是开源社区与中国的第一次碰撞了,前阵子,知名开源云服务提供商HashiCorp表示:不允许中国境内使用、部署和安装该企业旗下的“企业版”产品和软件。虽然最后这是一起乌龙事件,被限制使用的仅限于HashiCorp的加密软件。不过这一事件开了较坏的头,没准后续有可能还有更多的企业会做出类似的决定。
开源也会封闭,业界开始反思
作为全球最大的开源社区网站,GitHub在去年年中,开始对来自被制裁地区的用户加以限制了,分别有来自克里米亚和伊朗的GitHub用户发现自己的账号遭到了网站官方的限制。由于以上原因,我国IT界对于开源软件的使用有了不同的声音,清华大学的刘利副教授表示“我国对国外开源基础软件的依赖,使一些国家可随时通过隐藏最新技术或版权,限制甚至阻碍我国科技发展。”过去10年中,刘利老师的工作集中在自主研制国产地球系统模式耦合器。耦合器是实现气候预测与数值天气预报软件系统集成的一项关键核心技术。值得指出的是,2010年刘利老师开始从事这个方向的研究时,我国已广泛使用开源耦合器多年。不过即使有开源替代产品,刘利老师认为自主研发开源方案的替代品,并不是重复造轮子。在接受《中国科学报》采访时,他再次表示,“长期使用国外免费开源基础软件,很大程度上制约了我国自主研发的积极性和创新能力,拉大了我国在相关领域与其他国家的差距,这无异于助长了对我国的‘科技侵略’!”从实际情况上看,笔者不太认同刘利老师的说法,盲目的抄袭当然是有害的,但是借鉴开源软件的思路和想法,对于我国乃至整个IT产业来说都非常重要。如今中国 GitHub 开发者数量年增长 37%,并拟在中国设立分公司。在如今IT技术发展日新月异,拥抱开源、互通共享已逐渐成为业界的共识,在这种情况下,获取开源技术社区的支持是无比重要,不过这种支持是相对的,同时要求我们在使用开源时,尊重开源规则。
初识开源协议
说起开源协议,就不得不提GNU。其官方定义是一个“GNU is Not Unix”,这是官方给出的递归定义,永远也找不到本意。可以将它理解为一个自由软件工程项目或者一种计划,是由Richard Stallman在1983年9月27公开发起,它的目标是创建一套完全自由、开放的操作系统。1985年10月,Richard Stallman创立了自由软件基金会(FreeSoftware Foundation ,FSF),其主要工作是执行GNU计划。为了保证GNU软件可以自由的“使用、复制、修改、发布”,同样禁止部分人在GNU软件的基础上自己修改并发布的软件中添加任何限制他人自由使用的条款,在这个情况下就诞生了GNU的许可条款,再后来又产生了其他的(非GNU)许可条款,统称为开源许可协议。- GPL (GNU General Public License) :GNU通用公共许可协议
- LGPL (GNU Lesser General Public License) :GNU宽通用公共许可协议
- BSD (Berkeley Software Distribution) :伯克利软件分发许可协议
- MIT (Massachusetts Institute of Technology):MIT许可协议之名源自麻省理工学院,又称“X许可协议”或“X11许可协议”
- Apache (Apache License) :Apache许可协议
- MPL (Mozilla Public License) :Mozilla公共许可协议
如果将开源协议具体用途的决策点进行分类,那么其导图如下:
开源规则的反思
本次事件的起因是因为oynx的文石科技没有遵守开源协议造成,客观的讲oynx的做法虽然不具有普遍性,但是我国科技公司对于知识产权的重视程度是不够,这点的确值得国人反思。我们很熟悉的视频、音频处理项目FFMPEG和Linux都是采用了GPL。GPL协议和BSD、Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代 码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种Linux原因。不过还是有很多商业软件使用 FFMPEG 的代码但并未遵循 LGPL/GPL 许可证的要求,因此FFMPEG的组织方使用“耻辱柱(Hall of Shame)”来公示那些违反 GPL 许可证使用FFMPEG代码的其公司,其中有很大一部分是中国的知名企业,为此整个业界也都欣起了轩然大波。最近笔者发现国内最早的开源操作系统项目MiniGUI也发布了例外清单,https://www.fmsoft.cn/exception-list,对某些未遵守GPL协议的公司进行了例外处理。虽然这些还没有升级成我国IT界与开源社区的冲突,但是笔者还是要呼吁业界,在在使用开源软件的时候一定要注意遵守相关规则。
如果要问两年前中国最大的文化输出是什么,那这可能是大刘的科幻,也可能是莫言的小说;而如果现在要问这个问题,那它的答案应该是开源。十年前业界流传“代码正在吞没世界”的观点,现在IT界普遍认为“互联网世界的一切源自开源”,希望开发者们遵守开源规则,用好开源软件。
更多精彩推荐
☞一年一度程序员“补课”季来袭,618 背后技术大公开!
☞外媒:美国考虑封杀TikTok等中国社交应用;微信小程序将支持分享到朋友圈;Kotlin 1.4-M3 发布 | 极客头条
☞漏答题、偏科、多次复读,30 位互联网大佬考上啥大学了?
☞云计算与星辰大海的结合——不要回答,来自百亿光年外的未知信号
☞用机器学习还原《隐秘的角落》那些被修改的台词
☞一文速览 Eth2.0 的 7 大客户端进展