很多时候,我们过高地估计了开源软件面临的版权威胁,开源软件并非天生比专有软件存在更多风险。
虽然在企业中,开源软件越来越普遍,但开源软件始终难以摆脱知识产权的威胁。近,微软声称开源软件侵犯了它235项以上的专利,让这个问题又一次呈现在我们面前。如果说微软声明加剧了人们对开源软件的疑虑,那么围绕开源软件许可证和专利在软件开发中的作用则是火上浇油。
“我们多次听到客户说,知识产权是公司在购买时需要考虑的一个关键因素,” 微软战略合作伙伴和许可总经理Susan Hauser说,“但不幸的是,我们仍然常常要面对知识产权引发的各种诉讼。”
事实的确如此,但是这种情形并非只有开源软件独有,实际上,这是所有软件都会遇到的问题。,商业的开源软件已经成为一个成熟的行业,的开源软件服务商们并不认为开源软件会比专有软件有更多的风险。
“我们从来没有真正收到过任何违反知识产品的通知,”开源数据库MySQL的产品执行副总裁Zack Urlocker说,“在销售谈判中也很少有客户向我们提出过这个问题,我们的绝大多数客户根本不觉得这里存在问题,或者没有想到过。”
可以肯定地说,像微软这样的专有软件供应商是非常愿意提醒人们开源软件存在风险的。毕竟,如今开源软件已经成为IT部门一个非常重要的资源,严重威胁到专有软件的市场份额。但是,虽然版权、商标和专利等问题值得关注,我们却不应该夸大。相反,正确地理解开源软件和知识产权的关系有助于IT人员更好在其组织内推动开源软件的使用。
代码属于谁?
有关开源的代码有可能侵犯知识产权这种观点肇始于2003年SCO的指控,SCO声称,Linux的内核非法使用了SCO拥有版权的代码。的确,关于知识产权的问题大多数与版权相关,因为正是有关版权的法律让开源的许可证非常有效。
因为开源模式倡导开放、协作的开发方式。大多数开源项目来自众多人的共同努力,因此很多商业的开源软件供应商实际上并不真正拥有它们销售的软件的版权。实际上,它们只是从原来代码的作者那里获得了授权,可以分发这些软件。
协作开发和分发被认为是开源的有力的武器,但是这也可能引发一些问题。有时候(尽管不多)开源项目的参与者会把一些其他许可证下的代码拷贝到项目中,而这些许可证与开源项目的授权方式并不一致,或者更严重,这些代码直接侵犯了其他人的版权。如果这部分代码必须被删除,对客户来说,软件本身的价值会大打折扣。
为了降低风险,一些开源项目(如MySQL)要求项目的参与者把他们所编写的代码的版权交给一个统一的机构。但是,从整个开源行业来说,的确存在一些并不能真正给客户提供更好保障的项目。
但是非常重要的一点是,我们必须知道,开源项目决不仅仅是把很多人(或者组织)的代码合并到一起。Novell的总顾问助理Greg Jones介绍说,“在你提供的软件中,第三方的代码作用大小各有不同,但是,知道你提供的软件中有第三方的代码这一点非常关键,不管是专有软件还是开源软件都是如此。”