有必要起草国人自己的软件开源协议吗?
相信大部分的程序员都没有把各种软件开源协议真正看懂一遍,基本都是从各大网站上了解到一部分。而如果真正看英文的原文,又比较晦涩。很多协议也是含糊其辞,翻译和解释也不到位,所以咱们国内有不少软件厂商也会用自编开源协议。
一 开源协议难懂
很多时候,这个开源协议是给程序员看的,却是由法学家和律师写的。好像记得GNU协议里差不多得有5000个单词,啥概念啊!
就拿内容比较少点的MIT协议来讲,原文如下:
The MIT License (MIT)Copyright (C)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
二 国内开源现状
国内一些最常见的软件,像搭建网站的CMS内容管理系统。
有些cms软件,可能开始会打着免费的口号,
先收割用户,然后再告诉你,我们软件是“个人非商业”开以免费使用。
如果要正式上线、商用就得花钱购买授权。
还有就是填写个免费授权码那你就能免费用,那其实不还是在监测用户?
不是大家觉得这思路是不是比较好玩儿?比如搭建网站的cms软件,大家总不可能拿回去,只是在本地测试着玩儿吧?
而且平心而论,现在网站不会完全无任何商业信息的。
个人网站如果接了广告,或者有任何商业宣传,那不也就属于有商用嫌疑了。
其实这所谓的“个人非商业”的逻辑,就压根儿没任何意义。
当然,还有些软件开发商玩儿一些软件开源协议很6的,先一长串内容让用户摸不着头脑,再说我是基于某某开源协议的,然后我还有“附加协议”。
其实98%的用户,看完协议其实完全不晓得使用他们的软件,会不会存在知识产权侵权风险。但是在宣传方面,他们会说“免费开源”,那造成很多人误以为就是拿来就能免费使用。
其实开发商还有些隐晦的或者相关限制条款。
我觉得软件开发商其实没必要弄太多的套路,要是真免费使用,就通过其他方式产生收益(例如提供技术服务),要是收费就大大方方地讲出来。
有时候,你会发现侵权判的比你卖软件、卖主题模板 还赚钱,虽然听起来很别扭啊。可以理解为,打击侵权也是收益一部分。
三 开源 ≠ 免费
当然免费确实诱惑很大,因为能很快聚集用户。
例如,下面的软件是通过免费进行宣传。
你可以免费使用我的软件,但是总得帮我打打广告,不能删除“Powered by XX”版权信息;
你要是想去除版权信息,可以每月支付我们19美元就好了;
或者我们可以为你提供托管服务,按照每小时1美元付费给我们,有没有觉得很划算?
当然咯,这不是个开源软件,还接触不到程序代码,只是使用了开源的理念。
只是举个例子说明下,其实如果开源且免费更诱惑。
但是,开源是情怀,生存和持续就无法得到保障,毕竟不是所有人都能有投资,并且能够有很强大的力量建立起一个生态,然后再通过其他方式把先前的投资再收回来。
对吧,更有甚者觉得干脆你开发一个软件,直接放弃版权好了,纯粹免费开源且无任何版权。那对于开发人员的劳动就是无视了,我们也不提倡。毕竟开源协议,并不是排斥软件作者收费,或者商业运作。
我们应该鼓励科技创新,去中心化,也认可劳动、知识付费,让开发者有坚持下去的希望。
这里我觉得很有必要再科普一下{其实,开源软件,并不完全等于免费}主要还是要看清楚软件的开源协议。
【国外常见的开源协议】就挑选Apache和MIT这两个,咱们用简洁明了的语言概况一下:
Apache License 你可以用我的软件代码,但是如果你在我软件代码基础上再开发新的软件,也可以不开源;
你可以改我的代码,但是如果开源你必须写清楚你改了哪些?并且保留原开源项目中原作者的信息。
你也可以加新的协议要求,但不能与我所公布的协议要求有冲突;
你用这代码干什么我不管,但是你不能让我承担任何责任。
MIT协议 算是比较宽范的许可协议,作者只想保留版权(要保留License文本文件),而无任何其他了限制。
也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。
商业软件使用得多,也可以修改基于MIT协议的代码,甚至可以出售MIT协议的代码。
当然,MIT协议,也是不让原作者承担任何责任的。
四 适应国情的开源协议很有必要
对于众多的用户来讲,是会担忧知识产权问题。所以,起草符合国情的开源协议我觉得就很有必要了。
就怕啥时候完犊子嘛!
国人就不能自己制定软件开源协议,非要在人家的框架规则下吗?凭什么他们是规则制定者?
而是不是很多人觉得国外一些开源协议就一定很上规矩吗?
举个例子MIT协议够开放的吧,几乎概念是只需要保留软件原作者的版权注释,licenise文件就可以随你怎么使用,哪怕在基础上再加点功能说是你的软件再去出售都行。你说有没种可能性,老外也留了后手:“可以向发起方申请修改协议”Google 不就曾修改过安卓的部分开源协议?
如下文章来自律师原文:
以MIT协议发布的所有作品可以用于任何目的,所以你如果要为自己的作品加一份协议,那这份协议可以是其他任何协议,甚至是闭源的商业性的。另外需要注意的是,如果你不加任何协议,默认情况下“保留所有权利”。只有你拥有版权,别人甚至无法使用你的代码。。那严格地从法律上看而已,这算你的还是别人写的,还要有一个复杂的界定的。
做个未来大胆的预判,如果我国科技创新到规模后,假如收取专利费超过西方国家,他们会不会掀桌子,抛弃专利保护?
总结
开源已经是很不容易了,毕竟商业软件人家活得比开源软件好的也很多。
拿来主义我觉得要不得,开源软件如果象征性收费就挺好的,而协议也需要有本土化的!
当然我的想法,不能代表所有开发者。


徐伟轩博客-爱写歌的程序员思考和科普的日常自媒体
https://letus.top/archives/498.html(转载时需注明本文出处及文章链接)
如需转载或刊登,请联系我们获得授权。