当开发者想到开源时,他们只会联想到“免费”,而不会想到其他的方面了。因为一般情况下,人们不会太关注那些能够让他们免费使用且几乎没有任何许可限制的技术。 如今,当企业想到开源时,他们会立刻想到“业务灵活性”。面对当今瞬息万变的市场,企业越来越重视“业务灵活性”,并将其放在企业发展的首位。 相关IT业界人士表示,利用开源技术,能够快速、有效地开发出新的应用,同时还能节省成本,这使得许多大大小小的企业都开始拥抱开源技术,并不断地将开源技术应用到一些规模更大的项目中。 这就是开源技术迅速普及和流行的原因。Forrester研究公司专注应用开发和交付的分析师Jeffrey Hammond在Forrester发布的一篇题为“2013年的开发环境(Development Landscape: 2013)”的报告中指出,76%的开发者都不同程度地使用过开源技术。 为什么很多企业,无论其规模大小都非常重视开源技术呢?对此,本文总结了4点理由。 开源可以控制成本支出 节省成本是企业重视开源技术的原因之一,也是一个非常重要的原因。无论是大企业还是小企业,成本都是它们要考虑的一个重要问题。比如,美国流媒体播 放公司Netflix每个月的服务支出费用最少可达8美元,这是怎么做到的呢?对此,Hommond解释说:“因为Netflix公司所有的东西都创建在 了开源软件上,这样的话,该公司只要集中精力做内容就可以了,而不用费心思去建立运营系统或者测试架构。” “Netflix通常使用Spring、JBoss或Drupal等开源软件对其内容进行管理。”Hammond表示,一些企业能够免费使用 “Lego blocks”,所以他们能够将他们的时间和资源更多地投入到他们想要做的事情上去。过去,企业通常采用定制的软件套装,如ERP应用,而如今,有了开源 技术,定制软件的成本也降低了。 尽管近日来许多开发者和越来越多的企业都看好开源技术的发展,但并不是所有人都这么认为。 据Forrester 2011年第四季度的调查发现,那些从不使用开源工具,尤其是开源集成工具的开发者们对开源退避三舍的主要原因是,他们对技术支持(其中有71%的受访者 对此表示担忧)和缺乏管理开源项目的技能(42%的受访者对此表示担忧)表示担忧。同时,受访者还担心安全和授权限制范围等问题。 在某些情况下,开源的确促进了应用定制开发的发展。在过去十年里,应用定制开发在市场上逐渐失宠,这导致了商用级的应用和软件即服务(SaaS)产品获得广泛使用。 应用的定制开发可以节省成本,这一点吸引了锐珂医疗公司(Carestream Health)。锐珂医疗总部位于美国纽约罗彻斯特,是一家总资产约25亿美元的牙科、医疗成像系统和医疗保健IT解决方案供应商,该公司现有8000名 员工。锐珂医疗想要将其在世界各地工厂中的医疗设备上的数据信息整合到单一产品生命周期管理应用(Product Life-cycle Management, PLM)中,通过有效的信息管理,以减少新产品的研发和生产时间。 “我们想要对全球范围内的产品相关信息实现统一的管理”,锐珂医疗全球研发和IT工程部门主管David G. Sherburne说:“未来随着现代化平台的产生,我们希望通过采用有效的解决方案,同时减少人工操作步骤,将我们的生产力提高5%。” 所以,锐珂医疗选择了Aras公司。Aras公司是一家总部位于美国马萨诸塞州安多佛的解决方案供应商,为全球企业提供一系列完整的PLM解决方 案,该公司利用一个开源模型鼓励其用户开发新的组件并与其它企业分享组件。“Aras公司解决方案的性能是最好的,而且价格合理”,Sherburne 说:“但是Aras的解决方案并不能满足我们的全部需求,因此我们还需要做一些额外的应用开发,完成之后,我们会基于固定成本的出发点将其部署我们在全球 的各个工厂中。” 由于没有前期资本许可证的费用,这促进了锐珂医疗一直向前发展,而没有采购和库存许可的后顾之忧。“软件定制模式允许我们进入到PLM项目,并进行 合理的实施部署”,Sherburne 说:“它能够提供一个固定成本平台,该平台可以随着时间的推移而逐渐增强,也可以逐渐扩大以允许更多的协作访问,同时企业不需要支付额外的费用。” 像预期的一样,锐珂医疗在开源应用中取得了成效,其企业中部署的软件服务了1500个用户(包括1000名内部用户和500名供货商),而且其价格还不到百万,这与预付费用有几百万美元(其中还不包含随之而来的维护费用)的应用组件形成了鲜明的对比。 然而,大企业并不是唯一从开源的成本构成中获益的组织。从经济学的角度来讲,对细分市场软件有需求的小型企业也可以从这种质优价廉的软件组件中得到他们所需要的东西。 Development Is Child's Play的所有人Teri Wiss最近几年一直在寻找一个合适的应用,可以让她轻松管理她的16名员工(包括全职和兼职),并利用这个应用来给他们计算工资。 Development Is Child's Play是位于美国加利福尼亚州库比蒂诺的一家专业儿童治疗中心。 在过去几年中,Wiss评价了各种各样的医疗软件组件,但这些组件中没有一个能够提供她想要的功能。Wiss表示,由于其所从事的领域的专业性和独特性,几乎没有哪个SaaS产品或应用能够满足她的需求,而那些能够满足她的需求的应用又贵得离谱。 最终Wiss决定找一个专注开源技术的开发人员来帮她定制一款符合她需求的应用软件,这种基于开源技术定制的应用,其服务价格只相当于Wiss之前 关注的SaaS产品一年的使用费,而且应用交付时,只需一次性付费即可,不存在其他额外的高额费用。Wiss说:“一开始我很担心因为对IT技术懂得不 多,怕开发人员不能明白我到底想要一个什么样的东西。但是后来谈到合作的时候,这名开发者让我忘掉他要做的工作,只管向他介绍我自己的工作方式就可以 了。”(有关这一案例的细节可以阅读附图“开源助小企业摆脱困境”) 开源能够提高软件开发的质量 支持开源技术的人一直认为通过开源技术能够开发出更好地软件。他们认为:在开源社区中,如果代码有误的话,那么开发者们会很快发现这一问题,并及时将其解决。而程序员自己通常很难发现这一问题,至少短时间内不会发现。 美国银行(Bank of America)就看重了开源技术的这一优点。“当提到高质量软件时,我们的选择范围很广”,美国银行负责全球银行业务的总经理Peter Richards说:“开源技术可以让我们无论是在可靠性还是金融方面,都会获得一些好处。” Richards表示,通常情况下,银行会把开源组件整合到定制开发应用中,但这些开源组件必须是经过认证的。他说:“我们会仔细检查每一步,以确保这些开源组件能够在银行的开发环境中得到有效利用。” 像美国银行这么大的公司在使用开源技术,一些人不免会有些惊讶,对此,Richards引用Linux在商业环境中获得广泛应用的例子来回应他们。 他说:“最初,企业也比较担心,害怕Linux只是一个业余爱好者开发的操作系统,并不专业,恐怕无法胜任企业环境。但是,很多年之后,那些支持 Linux的人将Linux打造成一个能够出色地在企业环境中应用的操作系统。” 开源的应用开发代码之所以能够提高软件的质量,是因为有一部分开发者在贡献、检查和测试开源代码,也就是说这些开源代码都是非常可靠的。同时,该发 展结构也关系到了成本问题,如果自己做的话,那么最后你可能会付出一大笔费用,因为你需要自己测试并检查代码。Richards说:“以合理的成本提供高 质量的服务,这就是开源最大的优点之一。” |