怎样才有资格被称为开源软件

    发现国内不少软件都开源了。但很奇怪,他们都有自己相同一套的软件版权许可协议。这些软件许可协议跟开源本身的精神是有冲突的。举个例子:

    摘自Discuz!NT 里的许可协议:禁止在 Discuz!NT 的整体或任何部分基础上以发展任何派生版本、修改版本或第三方版本用于重新分发。 与其它条款无抵触的前提下,允许以自用为目的的进行进行二次开发或整合,但同样受前文第3项约束和限制,即保留Discuz!NT名称与链接。

    以上规定显然是违背开源精神的,通过OSI认证的许可协议:如GNU GPL、MPL、BSD等许可协议里面都明确规定可以修改版本或第三方版本用于重新分发的权利,但要保证你发布的系统也必须开源,包括你修改的地方都要注释清楚。著名的开源软件SUGARCRM就有几个较好的派生版本如:vtigerCRM、C3CRM。

    这些自搞一套许可协议的严格上都不能算是开源软件,开源软件不光光是软件源代码的开放,除了这些,还要说明遵守那种许可协议(OSI认可),还要包括开源文档(使用手册和开发手册)。那么怎样才有资格被称为开源软件?Eric Steven Raymond给出如下解释:

    根据许可的目的,我们可以区别许可证赋予你的各种不同权利。复制和再发布的权利,使用的权利,为个人目的修改的权利,发布修改后的作品的权利。一个许可证可能会对这些权利加上一些限制或给出一些附加条件。opensource.org就是各种对软件“开源”或“自由”思考的结果。该站点许可证的约束条款包括:

    1. 无限制的拷贝权。

    2. 无限制的使用权。

    3. 无限制的针对个人使用目的而修改的权利。

    这些指导方针保证修改后的二进制代码的再发布权;这与那些要求可以无障碍的取用软件的发行商的需求相吻合。这个做法使得软件的作者们可以要求修改的原始源代码采取把原有代码加上补丁程序的方式来再发布,这样就保全了作者们的原意同时又可以让他们“审查”其他人对项目的改进工作。

    OSD(开放源代码定义)是对“OSI开源软件认证”证书的法律定义,实际上她和人们曾经提出的各种关于“自由软件”的定义一样好。所有标准的许可证协议(如 MIT、BSD、Artistic、GPL和LGPL协议)都与该提法一致(然而有时候,比如GPL,有更多的限制条款,在选择这些许可证时请仔细理解)。

    值得注意的是有些只允许非商业用途的许可证并没有资格被成为开源许可证,尽管他们标榜自己是“GPL”或者其他典型的许可证。这种许可证对特殊的拥有者,或者对个人和小组有着歧视。他们对通过光盘渠道再发布的做法以及其他商业化的推广开源软件的尝试做出种种限制,从而把事情搞的非常复杂。

   博客园的开源项目NBear做的非常不错,完全符合开源精神,是一个地地道道的开源项目,NBear采用的是BSD的开源协议,项目也做得非常成功,为中国的开源项目的楷模。主要有几点非常值得国内的开源项目学习:

    1、建立开源社区:建立开源社区内容包括:项目概况、软件下载(源代码CVS\SVN)、文档(wiki)、BUG提交、FAQ、互动平台。让更多的人可以参与进来,这也是开源软件的开发模式。NBear的官方网站(http://nbear.org/)都包含这些非常重要的内容,希望大家支持NBear.

    2、软件许可协议: NBear采用的是BSD的开源协议,找一个符合自己项目的开源许可协议。如gpl、mpl、mit等等。这些许可协议可以帮助你来对付一些侵权行为的组织和人。

    3、软件服务模式:NBear项目也有一个链接是赞助|Donate NBear ,这也是为了项目生存的经济来源。我也看到了NBear的领导者Teddy's Knowledge Base的公告里有一段“承接有偿技术咨询及项目外包”。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在一天内建立物联网应用程序

物联网(IoT)的建立是为了解决现实世界中麻烦的问题,而将物联网技术整合到更广泛的信息生态系统中的过程几乎是同等麻烦的。这就是为什么物联网不是您可以在商店(或其...

4644
来自专栏即时通讯技术

【原创】新手入门一篇就够:从零开发移动端IM一、前言 二、读完本文的收获三、题外话四、网络编程理论准备五、网络编程基础实践六、IM到底该用UDP还是TCP协议?七、IM的数据通信格式选型八、移动端IM

IM发展至今,已是非常重要的互联网应用形态之一,尤其移动互联网时代,它正以无与论比的优势降低了沟通成本和沟通代价,对各种应用形态产生了深远影响。

2102
来自专栏IT大咖说

微信支付大规模前端开发背后,如何用外包解决困境

摘要 业务高速发展离不开各种配套运营系统的高效建设,微信支付也不例外。在前端人力极其匮乏的条件下我们另辟蹊径,大规模引入外包团队协同作业,并且在如何保证效率和质...

4516
来自专栏ThoughtWorks

如约而至|2018年5月期技术雷达正式发布!

ThoughtWorks每年都会出品两期技术雷达,这是一份关于技术趋势的报告,由 ThoughtWorks 技术战略委员会(TAB)经由多番正式讨论给出,它以独...

1091
来自专栏优惠券

如何用PHP开发一个完整网站?

作为世界上最好的语言PHP,在2018年发展依然一路凯歌。PHP语言受到众多企业家们的喜爱。众所周知,PHP技术主要用于一个网站的后台开发。那么如何用PHP开发...

5640
来自专栏企鹅号快讯

程序员最喜欢的五大神器

程序员留给大家的印象,不修边幅,沉默寡言。但程序员对于自己使用的神器,相当舍得花钱。今天咱们梳理下程序员最喜欢五大神器。 ? 1.Mac电脑 Mac电脑在一定程...

2238
来自专栏信安之路

内网域自动化渗透

今天来给大家分享一个开源的项目,感觉挺有意思的,先来看一下这个项目的 demo 演示!

1040
来自专栏IT技术精选文摘

小程序开发指南

7748
来自专栏北京马哥教育

25年Linux内核开发经历总结出来的九条经验

原文: 9 lessons from 25 years of Linux kernel development 作者:Greg Kroah-Hartman 翻译...

38811
来自专栏魏艾斯博客www.vpsss.net

腾讯云新购云服务器五折 1 核 1G 3 年 794.73 元(即 265 元/年)

6534

扫码关注云+社区

领取腾讯云代金券