今天看到一篇文章《开源项目在闲鱼、b  站上被倒卖?这是什么骚操作?》,我突然想起了之前两个类似的案例,发现群众的开源知识普及依然不足,借这个机会再聊聊开源,从开源著作权人的角度做一次讨论。

案例 1:倒卖开源代码

本案例中,作者十三发现自己开源的代码被贩卖,一脸郁闷。先不讨论这些倒卖者的行为,笔者从作者提供的代码托管官网上看到其开源许可证是 MIT。

MIT  作为一个宽松型开源许可证,授予使用者几乎无限制的权限。也就是说倒卖者的行为固然让人讨厌,但其确实是可以这么做的。当然,作者十三除了困惑于开源的东西为何还有人拿去卖钱以及竟然还有人买之外,整体上是淡定、大度的。而倒卖者利用的正是大众的这种专业知识的缺失和信息的不对称性,严格意义上这是存在经济正当性的。

案例 2:王垠闭源

这个案例是 2017 年的旧闻,但很具代表性。BSD 许可证开源的软件被商业公司商业使用,还聘请了原开发者,最后闹的鸡飞狗跳。

注:原博文《为什么我的代码进入闭源状态》地址已经 404 无法访问,大家可以搜索相关转载。

王垠此人我不甚了解,据说曾经国内人气非常高,知乎、v2ex、csdn  博客上到处都有对他的评价和争论。但至少从这篇帖子可以看出,其对开源的理解很浅、也很狭隘(在 2017  年时,不代表现在)。其对开源抱有不该有的幻想,期待过高。

案例3:swoole 修改开源协议

这个案例也是 2017 年的,以 Apache 许可证开源的软件 swoole(撰文时经核实 swoole 依然是 Apache  许可证),与其复刻分支版本之间纷争。

这个案例更像各种 Android 发布版与 Google Android OS  之间的关系,以宽松型许可协议开源的软件被各种修改版骚扰、蹭热度的现象很普遍。

开源知识普及之路漫长

以上三个案例都可以称之为开发者的控诉,暂不评论其控诉是否合理。仅以这些事件本身以及在网上引起的纷争,都说明距离开源在国内普及,还有很长的路要走。但值得欣慰的是,从  2017 年到 2020 年我们看到了这种进步,案例 1 中的作者对开源的理解上虽有偏颇,但并没有出现知识或法律方面的硬伤。

从开源软件概念引入中国,到近几年开源运动如火如荼的开展,已有几个年头。但据笔者与企业及业内人士的接触发现,公众对开源的认知和理解程度依旧参差不齐。究其原因有以下几点:

  • 大部分关注开源的人,更多的是关注技术,不会关注其背后的许可证问题;

  • 开源许可证更偏向法律,真正做技术的不关注、也不懂;

  • 开源许可证法律条文晦涩难懂,不容易理解;

  • 懂技术、会看代码的专利、著作权、商标等领域的律师甚少,没有技术背景的律师纵使法律水平再高,在理解涉及开源软件相关问题时也力不从心;

  • 开源领域国内诉讼不多,没有充分引起大部分企业、学界等人员的重视;

  • 也因为诉讼少,经济驱动力有限,很难吸引律师深入研究这一领域。重赏之下必有勇夫,若有足够的利益驱动,修个计算机学位又何妨,或者报个代码速成班也不是不可能吧。

笔者有缘在多年前接触开源治理、合规问题,时不时看到网上爆出浅层次开源“事故”,说明大众的开源知识有限。今天蹭个热乎劲,再探讨一下开源基础知识(开源科普的知识网上并不少,没人关注归根结底还是这个领域内生动力不足所致)。既然内生动力不足,就靠外部热点的外部动力吧。

开源“事故”,你是否理解开源?

开源是什么?

开源就是奉献,无私或有私的奉献。此处不接受反驳。

开源运动起源于自由软件运动,自由软件运动的发起人理查德·马修·斯托曼(Richard Matthew  Stallman)是自由软件运动精神领袖。自由软件运动所要反对的就是后来以比尔盖茨(曾经)为代表的软件私有化运动。所以说,自由软件是旗帜鲜明的追求奉献、共享和软件自由的。

开源运动的兴起是自由软件运动向商业化的妥协(可以这么说,毕竟经济基础决定上层建筑),所以说开源软件运动虽然有别于曾经的自由软件运动,奉献和协作依然深深的烙在其血液里。如果你无法理解这一点,就再看  10 遍开源软件的定义(直到看懂为止)。

开源运动淡化了自由软件运动乌托邦式的理想主义,穿上了实用主义的外衣,毕竟空洞的理想是填不饱肚子的。

开源“事故”,背后的起因

网上时不时爆出的开源“事故”大都归于两类:

类型一:批判拿来主义者坐收渔利、不劳而获、贩卖别人劳动成果……。这一类主角,多是软件开发者自己,站在自己的立场上看待开源软件的使用者(合法使用者、不合法使用者)。

该类“事故”的原因有:

  • 软件的开发者没有充分理解开源的要义;

  • 对开源许可证不理解,开源自己软件时没能正确选择许可证,导致自己有被白piao的感觉;

  • 想借助大众或社区的力量优化自己的软件,获得免费劳动力;

  • 想借助开源扩大自己影响力(自我营销),却没考虑为此要付出的代价;

  • 看到其他人利用自己的开源软件获利,心理上有些许不平衡。

类型二:批判开源软件收费、许可证不人性,批判严格型许可证的传染性像病毒、吸血鬼、耍流氓,对别人行使著作权或协议约定的行为愤愤不平。这一类人,基本是拿来主义者,同样站在自己的立场上看待开源软件的开发者(仁慈的开发者、邪恶的开发者)。

该类“事故”的原因有:就是想白 piao 而已,因为你完全有选择用与不用的权力。

这两类“事故”的产生都源于没能深入理解开源运动的精髓和要义,纯粹的从利己主义出发思考问题,没有做到换位思考。忽略了开源的初衷:奉献和共享。

现实中,经常发生这样的事情:对同一个人,作为开源的使用者时他们常常讨厌 GPL 许可证,因为限制太多;作为开源软件开发者时又喜欢 GPL 的安全感,讨厌  MIT、BSD 等许可证让自己被白 piao 了却投诉无门。

开发者和使用者的权利义务

开源软件首先是开发者的劳动成果,是拥有著作权的。开源一定意义上就是奉献,每一个开源软件使用者都是开源的受益者。面对这种奉献,你需要做的就是尊重。但开源的使用者并不必然要求是高尚的、无私的,这种尊重基于开发者选择的开源许可证在合规的前提下行使权利,在尊重权利人的同时实现共赢和自身利益最大化。

而作为开源软件的开发者,也不必然要求是高尚的、无私的,开发者可以基于自己的目的来选择适当的开源协议。选择开源,就要审视自己内心深处的想法,开源的动机和目的是什么?后果是什么?……慎重的思考了这些问题后,还需要清楚的知道选择宽松型的许可证可能要面对的各种问题。

开源使用者是纯粹的受益者,即便是抱怨无非是对严格型许可证发发牢骚而已。而开源的开发者往往显得更值得同情,一般是从道义上(如案例 3)以及经济利益上(如案例  1、2)体现。但这就是开源运动运行的机制,它肯定不完美,但被证明是行之有效的。针对开源开发者,你需要做的就是当别人违法的时候拿起法律的武器捍卫自己的权利,当别人没有违法的时候,你心里再不爽也要保持淡定。

当然,诸如前述案例让人糟心的事情肯定很多,开发者也不是束手无策:

比如案例 1 中新蜂商城的作者,选择了 MIT 这个非常宽松的许可证。就意味着,其他人几乎可以拿来做任何事情,包括卖钱。但你依然有以下权利:

  • 不准拿你的大名做推广,或者类似名字这种具有身份意义、独特标识作用的符号;

  • 如果作品真的好且有市场,作者完全可以自己经营,将自己的品牌做大;

  • 别人卖的了你的源码卖不了你的实力,你可以不断迭代升级,源码和服务提供一站式解决方案。其实,现实中我们熟悉的开源软件大都如此,比如  Android、Linux 等;

  • 乐见其成,毕竟开源就是奉献自己的劳动成果让人使用,二手贩子们所做的事与开源者的目标是一致的。当然如果贩子们声称是自主源码云云(国内拿开源的东西声称自主开发的太多了),那必然是违法的,开源者可以大胆的拿起法律的武器。

主动开源,你真的准备好了吗?

基于国内的现实状况,笔者以往更多的是将精力放在帮助企业和开发者合规的使用和利用开源。因为我们曾经都是开源的受益者,需要基于合法、合规的前提汲取营养、学习知识。

目前,国内越来越多企业或个人开始思考反哺开源社区,这是非常好的开始,说明我们从受益者开始变为奉献者。但现实中这些才华横溢的开发者在开源中难免遇到案例中的问题,一旦遇到将严重挫伤其开源的积极性。

因此,开源开发者在主动开源之前,更需要深刻理解开源,明确自己开源的目的以及可能面对的潜在问题等。在慎重思考自己开源的目的和对开源后各种问题的考量后,选择适合自己的许可证。

以下是几个典型的开源动机面临的潜在风险:

1、想借助大众或社区的力量优化自己的软件,获得免费劳动力

开源软件千千万,真正取得成功或大众认可的软件凤毛麟角,不能说这种目的动机不纯,至少实现的可能性甚微。更多的可能是根本没有人看得上你的项目。

2、想借助开源扩大自己影响力(自我营销)

这可能是开源开发者,包括大企业做开源的一个非常重要的目的。具体能否实现,就看你的水平有多高,实力是否匹配自己的梦想。

3、基于自己牛逼的软件,打造生态。

这也是大部分企业的终极梦想,就像第一条所述,大部分的开源软件都归于路人甲,能否实现自己的生态梦取决于你的软件到底如何,能否支撑一个生态、够吸引外围群落。

即便这些都满足了,还要思考一点,你自己的实力能否持续主导这个生态的发展。因为,开源社区的主导力是由实力说话的,如果你无法保持持续的创造力,别人fork一下就可能成为新的盟主而把你晾在一边坐冷板凳。Google  的 Android 生态就是道理,Google 对 Android 生态的领导力是建立在其持续的创造力之上的。

4、Just for fun

最纯粹的开源。如果你开源软件的目的很单纯,就是因为喜欢而开源。那单纯的你需要知道不同开源许可证开源的后果。若别人拿你的开源软件去卖钱你也不要太上头,因为这是允许的,当然更不能看到别人赚了一大笔钱心里就不平衡了。就像大把的企业靠着林纳斯·本纳第克特·托瓦兹(Linus  Benedict Torvalds) Just for fun 的软件 Linux 和 Git 赚了大笔的钱,你能做的就是乐见其成。

开源不仅仅是代码,更是人品和实力,也是策略和格局。希望每一个奉献和使用开源的你,都能感受到这个世界的善意。以上是基于本次热点,针对使用开源以及主动开源分享的点滴思考和建议。有兴趣可以找我讨论沟通。

关于作者:

付钦伟,集慧智佳高级咨询师、专利代理人,擅长专利分析布局、FTO调查与风险应对、专利信息应用、开源软件风险与合规指导。

(文章来源:Linux中国)