近来,有几位年轻人写了一些文章,有关道德绑架开源项目维护者之类的怨言之类的,其中颇具代表性的是:
- 望京一哥小智:6年开发者社区工作经历,聊聊我眼中的社区、开源与商业
- toughtworks 的李光毅: 开源社区的暗面
通常情况下,我是不理会这样的文章的,但是这次实在憋不住了,不吐不快。我想最大的原因还是不希望看到年轻人这样,他们本应该充满希望,对开源保持乐观。
什么是搭便车?
经济学家/博弈理论家的解释是这样子的:
没有通过参与集体行动来为利益总和的累积贡献力量,还想要从成果中分得一杯羹。[1]
那么我们在开源的世界里,可以套用这个定义:
一些商家或个人没有参与开源项目的 upstream 的任何行动(设计、编码、测试、反馈、需求、文档、宣传、营销等),只是坐收其中的利益,甚至还违反开源项目的许可证声明。
大体上满足这个定义,就可以称之为搭便车者了。
如何识别搭便车行为?
在开源的世界里,其实识别搭便车行为是蛮难的一件事,因为加入开源,就压根不是冲着这个来的。还因为开源对于最终用户是完全不设防的买卖,对于惩罚搭便车行为不是直接的。
最为简单粗暴的识别方式就是是否违反项目的许可协议,换句话说,当继续分发的时候是否遵照了开源的许可证条款。
虽然搭便车行为在人类自己建立的秩序上不能让部分人接受,但是传统意义上的知识产权官司大部分也很难提起诉讼。
其实还有一个颇为有效的识别方式,可以美国波特·斯图尔特大法官鉴定情色艺术的说法[2]:
“哪儿有什么标准,我一看就知道是不是。”
搭便车行为不会根除,请认清这一现状
我们通常以为随着时间的流逝,尤其是近代物理学和生物学的发展,以进化论为代表的观念深入人心。以为人性也是全部进步的,其实不然,以全球的视角来看,文化的发展并不是齐头并进的,可能随着全球化供应链的发展,技术普惠人类可能很快,但是文化观念却未必。即所谓的“现代人的头脑,原始人的心智”[3]。
因为开放源代码的天然特性,对于搭便车行为是没有任何限制的,也就是我们常常形容的“不设防”的交易,而且将定价权完完全全、彻彻底底的交还给了消费者。那么搭便车行为,只要文化没有进化为生物性,这种事情就不会断绝。
如果对于搭便车行为视为一种恶意的话,而且你总是盯着这些恶意的行为,就会让你的心胸充满怨气,就是作者在引言中所提及的那种类型,进而走向开源的反面:专有的闭源,历史上有一些聪明的人非常的善于利用人性的这点,并成就了专有软件帝国。正是应了著名哲学家尼采的那句话:
“与怪物战斗的人,应当小心自己不要成为怪物,当你凝视深渊时,深渊也在凝视你。”
可以,换一个思路,搭便车又何尝不是一种征得用户乃至开发者的先决条件了呢?但是,正如中国古代谚语所云:“升米恩,斗米仇”的后半句,有一部分搭便车者就会转换为对原创者的恶性索取。这是谁也不想看到的局面,但是人性的弱点,我们是可以通过其它手段来进行预防和弥补的,而且不一定非得使用道德绑架/谴责,法律等强制手段。
如何消化道德上的反胃
搭便车者,绝大多数时候给人的是一种不适的感觉,似乎一报还一报是一种人类非常原始的本能,即使进入现代复杂的社会,人们之间的相互依赖前所未有的紧密,而且有着越发紧密的趋势。
就像我们在引言总所看到的文章作者字里行间透露出来的厌恶、谴责一样,搭便车者给人的感觉让人抓狂。每年、每个项目都有一些人忍受不了这些人或行为,倦怠感充斥着,有的甚至心理上出现了一些问题。
其实,这种反感,要尽力去理性的对待,不能任由其发展,无论是倦怠,还是愤怒,其实伤害的是自己。除了上面提到的转移注意力之外,掌握更多的知识,未尝不是一种转移这种消极的上佳做法。
如何转化搭便车为共赢,才是充满前途的道路
一定要认识到,人是可以改变的,没有人是天生下来的搭便车者,不要尊严,愿意寄生的。有了这个前提,就可以想着做下面的事情了,即有一部分搭便车者是可以转化为:付费用户、推广者、contributor、捐赠者、赞助者的,一同进步,所有人都赢的非零和博弈,是大家都乐意得到的结局。
从认知的角度
软件的开发以及软件本身是一种很特殊的兼具信息、计算机技术、传播等特性的新型事物,其本身的抽象性,以及构建自身世界的复杂性,决定了软件是一个动态的、开放的、进化的创造物。也就是说它是一直都在变化的。纵观软件的历史,很好的证明了这点。
只有真正的理解了软件,才能明白开源的重要性,源代码对于技术的传播和交流的载体,是软件进化的充分条件。其实搭这样的便车,是一种“冒险”,它并没有固定下来的可能性,随时翻车。
动之以情,同理心策略
无论是黑客文化[4]也好,匠人[5]精神也罢,开源项目的开发、工程都是有这些人付出劳动的结果展现,正如其成果,以Linux、Kubernetes、Apache等为代表的开源项目为现代信息世界的塑造有着巨大功劳的成果,这些人在现实中也是人类,需要吃、穿,需要安心的为社会尽自己的一份责任。任何对开源项目的不可持续性造成的伤害,就会间接的造成这些开发者的困扰,从经济学的角度讲,一旦不划算,他们就可能会放弃项目,另谋高就。
精打细算不吃亏
开发一款开源项目是可以计算出成本的,全球化的汇率是流通的,各地的人均收入也是可以查阅的,不断迭代的开源项目仍然在不断的累积着成本,搭便车者往往会在静态中做计算,忘记了没有投入,意味着对于项目的驾驭能力的消弱,以及创新的匮乏。以Linux为代表的开源项目,用事实证明了,搭便车者经过了岁月的洗涤,没有占半分便宜,相比于一干不断的contributing,亏的是不见影踪。
把自己该做的事情都做了,剩下的就看他们的觉悟了。
结语
“以眼还眼,以牙还牙” 是记载于*巴比伦时代的汉谟拉比法典[6], 但是这是说被伤害的时候。其实搭便车者在信息时代,或者是限定在开源世界,至少是没有伤害到主体:开源项目及其共同体,虽然在行为上是有道德反感,而且也不符合共同体的日常行为规范,但是他们并不是开源的敌人,或者是由于一时的贪婪,或者是由于知识上的欠缺,又或者是由于道听途说,又或者是由于盲目跟风,无心做出了这些行为。
就结果而言,搭便车者往往没有什么好的下场,翻车、落伍、失去诚信等等都是他们最后承担的代价。
无论如何,他们仍然是开源世界的一部分,你不能消灭他们,那么就不如争取到他们。
9月17日,由中国信通院主办的可信开源大会 OSCAR 即将举办,演讲主题赞助正在招募中,“开源之商”和“开源文化”分论坛,欢迎你来传播开源知识,拓展用户视野,打开开源万亿市场!