欢迎来到中国开源软件推进联盟

你在这里

释 义 开 源

中国开源软件推进联盟主席 陆首群

       开源软件已在全球成为主流。
       开源也成为今日明星,美国总统奥巴马为使美国尽早走出金融风暴、经济危机的阴影,把传播开源看作为解决方案之一(委托Scott McNealy提出开源白皮书)。
        虽然开源许可协议是规范开源软件定义的准则,但一些人对开源的释义还存在歧见。
        释义开源,就是要回答人们如下问题:

  • 开源的发展主要是受到价值观还是某种利益的驱动?
  • 如何看待开源软件商业化带来的机会与挑战?
  • 社区的开源项目如何成功地转变为企业的开源产品?
  • 开源运动与企业的工业开发流程如何做到无缝衔接?
  • 如何看待开源软件的知识产权?

      开源领袖们认为,“开源软件的诞生早于私有软件”,开源软件与私有软件分歧的由来是:“Bill Gates于1976年给‘Homebrew计算俱乐部’去信要求‘停止共享Altair BASIC’”;“自由软件基金会是在1985年为了回击‘保持源代码的私有性’这个‘新主意’而成立的”。

      Brain Behlendorf(Apache创始人)在“2007开源中国,开源世界高峰论坛”上提出:“利他主义和利己主义是人们为开源软件做贡献的原因 (Altruism and Capitalism are why people contribute to OSS)”这个命题,他接着指出,“利他主义和利己主义合在一起,才能使开源作出贡献,使开源改变世界”;今年3月,Bruce Perens(开源创始人之一,曾应联合国开发署的邀请到“联合国信息社会世界峰会”上宣讲“开源”)发表文章,他在文中提出:“开源是资本主义的还是共 产主义的(Is Open Source Capitalist or Communist)”?他接着指出:“大部分成功的开源项目既包含资本主义元素又包含共产主义元素”,“开源既是资本主义的,又是共产主义的,既是商业 的,也是个人爱好的,而且还是学术的,相辅相成”。
       我在2007年也曾说过:“开源是利他主义与利己主义矛盾的对立和统一,也是自由软件与私有软件矛盾的对立和平衡;为了推动开源的发展,关键要寻找一个合理的平衡点”。
       现将上述同义词列表如下:

 

开 源 软 件 (Open  Source  Software)
(在一定条件下)
利他主义(Altruism) 利己主义(Capitalism)
共产主义的(Communist) 资本主义的(Capitalist)
自由软件(Free Software) 私有软件(Private Software)
或专有软件(Proprietary Software)

       为了理解开源的真谛,我们还要回答下列问题:
       什么说开源软件既包含着自由软件的元素又包含着私有软件的元素?为什么要辩证地去理解,而极端的理解不可取?如往左极端:将使你变成过激派、乌托邦,而往右极端:将使你变成保守派、私有制的卫道士。
      为什么说利他主义与利己主义(或自由软件与私有软件)合在一起,才能使人们为开源作贡献;或成功的开源来自两者有机的合成,而不是极端的清一色。
       Bruce Perens认为,开源的发展表现为三个不同的范例:
1,基础设施型
        这个范例是一些私有企业(如IBM、Google、Intel等)出于对基础软件发展的商业利益,支持、资助不以盈利为目标的某个社区开发基础开源软件, 资金资助方式可由企业单独提供或联合组成基金会;技术支持方式可由企业在其内部建立LTC或OTC,LTC或OTC所属的工程技术人员将以志愿者的身份为 该社区进行无偿开发;这些企业支持该社区开发基础开源软件的目的,是便于这些开源软件最终可用来作为对自己的商业运营(如Google)或自己的产品(如 IBM、Intel)的一种支撑。基础设施型开源软件的代表项目有Linux(Kernel),Apache和Eclipse。这些都是由社区开发的、坚 持自由开源软件的价值观、执行开源许可协议的典型的开源软件,也是当今开源发展的最大源头;但它们不是置身于真空中,而是置身于其背后企业所考虑的间接或 长远的商业运作之中,并最终为他们的商业目的服务。
2,非盈利型
       这是完全凭个人兴趣或业余爱好,也可以说坚持自由开源软件的价值观、没有任何利益动机、由技术发烧友自发组织起来开发开源软件的一个范例,这个范例没有商 业目的,也没有考虑财务目标。这个非盈利型的开源项目是纯粹开源的;他们做出的成果,①可供社会上个人、学校与有关团体无偿使用;②可供一些优秀的开发者 用来开发其他项目(不管有无利益驱动);③应用于大多数在吸收商业伙伴之前的其他开源项目。但总的来说,这种范例无法做大做强;Eric S. Raymond(开源领袖之一)说:“直到1991年后,Linus Torvalds和我找到了一种开源社区新的开发机制,开始突破发烧友的圈子,情况才有所好转”。
3,直接利益型
       这种范例是指在社区开发非盈利的开源项目的基础上,由企业继续进行工程化开发,发布开源产品,实现开源商业化,或采用双重授权(开源许可与商业许可)。采 用这种范例的如:MySQL(Sun)、Berkeley DB(Oracle)与Spring(Spring Source)等。这种范例直接考虑利益目标,并考虑商业运作。
      下面举MySQL(社区版)和MySQL(企业版)比较的例子来说明:


       从MySQL社区版与企业版的比较中可以看出:MySQL社区版执行GPLv3许可协议,是典型的自由开源软件,其源程序代码全部开放,你可从网上自由免 费下载;必须指出,该社区版还处于实验阶段,其特性不够成熟,而且社区不提供支持和服务,安装、配置、调试要自行负责。MySQL社区版的用户主要是社会 上的个人、学校与有关团体,供他们无偿使用。社区开发机制是“集体开发、合作创新、对等评估”,有人说“开源创新是国际化的”,指的是社区开发的开源项 目。企业(发行商)从社区手中接过其开发成果(全部开放的源代码),进行后续的工程开发。工程技术包含专有技术与工程经验,它独立于全部源代码之外,全部 源代码加上工程技术构成企业开源产品的全部技术。MySQL企业版中的工程技术包括配置调优技术,产品测试技术,质量认证技术, Bug Fix,Patch回归移植技术,以及本地化技术等。企业开发将促使社区的开源项目变成企业的开源产品,优化开源软件的特性,催化开源软件的成熟度。工程 技术是企业自主开发的,不开放的。这样,企业发行的开源产品,既实行源代码开放,执行开源许可协议(我们称之为“开源产品”、“开源企业”是很自然的); 又因在开源产品中包含自主的、不开放的工程技术,这就为开源软件商业化带来了机遇。有人说“企业对开源产品拥有自主知识产权”,这也是无可非议的。开源软 件商业化之路有紧迫的现实需要,是开源软件做大做强形成产业化、在市场上形成竞争力的必由之路。开源软件走的是低价销售战略(包括“软件免费、服务收费” 模式),那些制造“免费获得”幻想的人,实在是误人误己!
        Bruce Perens又说:“想想Red Hat、Ubuntu、Novell属于哪一类范例呢?”他说:“Red Hat(Fedora)、Canonical(Ubuntu)和Novell(SuSE)就像股票经纪人,而不是股票幕后的公司”。我想这些幕后公司可能 是考虑间接、长远商业运作,追求利益最大化的(如IBM、Google、Intel那样的)幕后企业。
        几年前,涉及商业利益的开源项目会引起很多人的过敏反应,商业化对开源项目提出了新的挑战和压力。正如开源资深专家Matt Asay所说的:“认识到开源软件商业化带来的机会很重要,现在对开源商业模式已有了紧迫的需要”。
        Linux发行公司都在开发并销售自己版本的Linux操作系统(我这里谈的Linux包括Kernel、Utility、Basic Application的大系统)。关于Linux社区版与企业版的比较,与上面MySQL所述类似, 对Linux企业版中的工程技术,我过去曾多次提出:

  1. 配置调优技术:对内核中各个软件模块实施不同配置,进行调优;
  2. 产品测试技术:进行全面产品测试,特别是特性测试、压力测试、集成测试、兼容测试、环境测试、用户验收测试和回归测试,进一步检查缺陷,适应运行环境,优化性能;
  3. 回归移植技术:在产品生命周期内,持续向用户提供Bug Fix,Patch服务,包括自动监控技术和热修复技术;
  4. 质量认证技术,进行质量认证,提高产品质量,提供质量保证;
  5. 专用工具和插件;
  6. 本地化设计,进行以改进使用性目的用户界面(UI)设计,改进外观工业设计(ID),以及开发本地服务技术;
  7. 内核偏量技术,采用专有技术和凭借工程经验,使企业发行版分支(Distro)的内核源码与Linux社区发行的标准(Official)的内核源码允许产生3-5%的偏差,以优化产品特性。

        必须指出,过去开源软件的知识产权保护存在灰色地带,近来正在改善,已逐步明确开源软件知识产权的拥有者“集体”及其“代表”,将采用传统的“右版”权来 保护开源的“左版”版权,如果发现有人违反开源许可协议,开源社会将追究其法律责任。Matt Asay说:“在开源社区,我们一直在试图改变世界,都忘记了这个世界是用知识产权堆砌起来的”,开源要用知识产权这个武器来约束自己,也要用知识产权这 个武器来保护自己。

法律公告 | 隐私保护 | 联系我们 | 网站地图 | 友情链接

秘书处地址:北京市海淀区羊坊店东路5号博望园西配楼10号 电话:+86 10 63951881-8502

Copyright 2005 版权所有  中国开源软件推进联盟    京ICP备05070775号