尊重版权,遵守开源协议,才是软件自主掌控之道

近日中国电子书厂商Oynx拒绝开源其基于Linux 内核修改的设备源码,而这一做法明显违反了Linux的GPL协议。因此在Reddit社区引发了开源软件如何在中国维权的大讨论。

凭心而论我国阿里、腾讯、百度等大厂近些年来在开源方面贡献都很大,Oynx拒绝开放源码的行为也纯属是个例,不过这次风波也明显带有了中国的地域性色彩,毕竟好事不出门,坏事传千里,即使我们开源了飞浆、RocketMQ等多个优秀的开源软件,也无法对冲不遵守开源规则所带来的恶劣影响。

无独有偶,这已经不是开源社区与中国的第一次碰撞了,前一段知名的开源云服务提供商HashiCorp在官网宣布:不允许中国境内使用、部署和安装该企业旗下的“企业版”产品和软件。

 

虽然最后确定这只是一起乌龙事件,被限制使用的仅限于HashiCorp的加密软件。不过这一事件开了一个比较坏的头,标志着开源也有走向封闭的可能,后续很可能还会有更多的企业会做出类似的决定。

开源也会封闭,业界开始反思

而作为全球最大的开源社区网站,GitHub在去年年中,开始对来自被制裁地区的用户加以限制了,分别有来自克里米亚和伊朗的GitHub用户发现自己的账号遭到了网站官方的限制。

也正是因为以上原因,让我国IT界对于开源软件的使用也开始有了不同的声音,比如来自清华大学的刘利副教授就公开表示说“我国对国外开源基础软件的依赖,使一些国家可随时通过隐藏最新技术或版权,限制甚至阻碍我国科技发展。”

过去10年中,刘利老师的工作集中在自主研制国产地球系统模式耦合器。耦合器是实现气候预测与数值天气预报软件系统集成的一项关键核心技术。特别值得指出的一点是,2010年刘利老师开始从事这个方向的研究时,我国已广泛使用开源耦合器多年。不过即使有开源替代产品,刘利老师也还是认为自主研发开源方案的替代品,并不是重复造轮子。在接受《中国科学报》采访时,他再次表示,“长期使用国外免费开源基础软件,很大程度上制约了我国自主研发的积极性和创新能力,拉大了我国在相关领域与其他国家的差距,这无异于助长了对我国的‘科技侵略’!”

不过从实际情况上看,笔者不太认同刘利老师的说法,盲目的抄袭当然是有害的,但是借鉴开源软件的思路和想法,对于我国乃至整个IT产业来说都非常重要。而且从实际的情况来看,GitHub目前40%以上的新增用户全部来自于中国,而且他们也计划在中国设立独立运营的分公司,并没有任何与我国脱钩的迹象,而且在目前IT技术发展日新月异,拥抱开源、互通共享已经逐渐成为了业界的共识,在这种情况下,获取开源技术社区的支持,对地我们来说无比重要,不过这种支持是交互的,也要求我们在使用开源时,尊重开源规则。

初识开源协议

说起开源协议,就不得不提GNU。其官方定义是一个“GNU is Not Unix”,这是官方给出的递归定义,永远也找不到本意,我们可以将它理解为一个自由软件工程项目或者一种计划,是由Richard Stallman在1983年9月27公开发起的,它的目标是创建一套完全自由、开放的操作系统。1985年10月Richard Stallman创立了自由软件基金会(Free Software 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/exception-list对某些未遵守GPL协议的公司进行了例外处理。虽然这些还没有升级成我国IT界与开源社区的冲突,但是笔者还是要呼吁业界,在在使用开源软件的时候一定要注意遵守相关规则。

 

如果要问两年前中国最大的文化输出是什么,那这可能是大刘的科幻,也可能是莫言的小说;而如果现在要问这个问题,那它的答案应该是开源。十年前业界流传“代码正在吞没世界”的观点,现在IT界普遍认为“互联网世界的一切源自开源”,这里笔者再次呼吁业界,遵守开源规则,用好开源软件。

 

更多推荐

尊重版权,遵守开源协议,才是自主掌控之道