开源代码胜过专有代码的七大原因
3701
2016-05-31 19:17
文章摘要:  开源的特性和常见惯例提供了一对无与伦比的组合。   我总是惊讶于有些用户希望微软Office或Photoshop会移植到Linux平台。也许,有些人就想要能够在自己喜爱的操作系统上使用标准行业软件。不过就我而言,像LibreOfficeWriter或Krita这些开源应用程序不仅仅是专有软件的替代者――我会选择它们作为最高质量的软件,


  开源的特性和常见惯例提供了一对无与伦比的组合。




  我总是惊讶于有些用户希望微软Office或Photoshop会移植到Linux平台。也许,有些人就想要能够在自己喜爱的操作系统上使用标准行业软件。不过就我而言,像LibreOfficeWriter或Krita这些开源应用程序不仅仅是专有软件的替代者――我会选择它们作为最高质量的软件,用来满足我的要求。




  不是只有我一个人这么认为。如今四分之三以上的公司企业在内部的某个地方使用开源软件。不像十年前,现在许多开源应用程序不仅很成熟,还一再证明它们的差错率低于专有软件。




  我认为至少有七大原因可以表明开源代码更胜一筹:




  7. 无需做重复性工作




  正如GNU通用公共(GPL)许可证的序言所述:“对大多数软件及其他实用性作品而言,许可证旨在剥夺你共享和修改作品的自由。”相比之下,像GPL这些开源许可证规定了哪些软件代码可以借鉴和开发的条款。




  由于开源许可证,程序员不需要重复已经完成的工作,因而节省了时间。他们的软件可以更迅速地完成,或者可以添加更多的功能,执行更多的测试。对许多公司来说,这种情况意味着缩短了产品上市时间、开发的产品更成熟。




  6. 开发时不计成本因素




  开发专有软件通常需要密切关注成本。太多的新功能、太多的定制,甚至太多的错误修正,都让专有软件版本超出预算。




  与此同时,为了吸引客户购买,必须添加新的功能,这对成熟产品来说可能颇有难度。比如说,最近观察人士认为,苹果一直在做表面上的改变,远远没有改善可用性,实际上降低了可用性。




  相比之下,开源项目可以随意定制,包括针对小语种进行开发,即便潜在用户数量太少,不可能形成一个有利可图的市场。




  5. 无需一味推出新功能




  向市场推销软件需要新功能。鉴于各大类别的软件早已成熟,这个要求可能意味着纯粹为了改变而改变,或者偏重于细小的改进。




  然而,开源软件却没有这样的要求。即便没有要求任何新的功能,开源项目也会连续发布一两个版本,专注于精简代码、减少错误或其他维护工作,这些工作可以提高软件质量,但是基本上是最终用户看不到的。




  4. 不强调最后期限




  2008年,Ubuntu创始人马克·沙特尔沃思(Mark Shuttleworth)试图让其他项目协同发布软件,那样大家都可以同时发布软件。尤其从发行版的角度来看,这个想法似乎很合理、很高效。




  然而,这个想法受到了谴责,结果无人理睬。“顺其自然”(It’s ready when it’s ready)成为了一句口号,因为很多项目担心,赶在最后期限之前完成会导致软件质量下降。时至今日,就连像Fedora这样的大型项目也常常改变发布日期,它们要经历多个版本,而不是发布问题多多的版本。很少有商业公司有条件这么搞,不过这种做法基本上无损开源项目的美名。




  3. 关注功能




  多年来,开源不得不专注于功能,因为许多开源项目在努力赶上与之竞争的专有软件。而如今,免费软件日益赶上了专有软件,而且常常让专有软件大吃一惊,但是重心依然没变。虽然过去专注于功能常常意味着界面设计被忽视,但是这种重视意味着重心通常放在真正的改进上。时至今日,“花架子”(外观漂亮但没有实际用途的改变)在许多开源开发人员当中仍然没人理睬。




  2. 贴近用户群




  正如老话所说,开源开发始于某个程序员决定满足自己的愿望。即便不是如此,大多数项目主张人人平等的精神也意味着,最终用户更可以直接联系开发人员,而注册用户一般鲜有机会直接联系专有软件的开发人员。无论怎样,开源开发人员与用户更紧密地互动,哪怕他们其实更愿与用户保持较为疏远的关系。




  1.结果事关个人声誉




  如果开源软件主要由志愿者编写,动机是出于获得赞誉。编写一行行代码后,程序员得到的回报是提高了声誉。现在,许多开源程序员获得某种经济报偿,但是动机仍然基本上一样:程序员希望编写出最好的代码,因为这事关个人声誉。作为一种激励,维护个人声誉常常比拿到报偿更管用。




  最好的结局




  当然,这些原因在任何一个特定的项目中可能行不通。尤其是,有几个原因依赖于掤足够的开发人员,而许多项目长期缺乏帮助。




  不过,总的趋势还是很明显。考虑到开源具有的优势,专有软件只好不断地降低价格,或者支持无利可图的受众或功能,希望以此保持竞争力。比如在过去十年,微软Office已经大大扩展了对语言的支持,而在LibreOffice和OpenOffice.org开始将版本迁移到小语种之前,微软在这方面没有显示出多大的兴趣。




  即使是现在,LibreOffice支持112种语言,而微软Office支持106种语言――差异很小,但是如果前者不断增加,而后者很难仿效,差异就会马上变大。如今许多开源应用程序赶上了专有软件,而且领先优势在逐年拉大。


版权声明:

凡本网内容请注明来源:T媒体(http://www.cniteyes.com)”的所有原创作品,版权均属于易信视界(北京)信息科技有限公司所有,未经本网书面授权,不得转载、摘编或以其它方式使用上述作品。

本网书面授权使用作品的,应在授权范围内使用,并按双方协议注明作品来源。违反上述声明者,易信视界(北京)信息科技有限公司将追究其相关法律责任。

评论