在目前有很多厂商都在做开源技术的产品。最近,在博客和twitter聊天中,有很多关于如何确认一个开源技术产品的讨论。目前的开源技术究竟是一个什么样呢?未来的走向将是一个什么样呢?
开源的“纯洁性”
过去,我经常花时间针对一个特定的供应商来讨论开源的“纯洁性”。但是在Shaun Connolly发表了“开源社区和奥巴马”的文章以后,我改变了自己的关注点。2010年真的很难定义一个“开源供应商”,因为几乎每一个IT供应商都在他的产品中使用开源,促进开源发展,或者围绕开源提供服务。
现在关于开源技术“纯洁性”的讨论已不再局限于供应商了,而是开始上升到产品上了。这些关于开源的讨论因为加快开源内核许可的发展和通过云交付而交付的软件产品的发展而进展更加快速。451集团的Matt Aslett写道:这是很简单的,软件能够满足开源的定义,或者不能够满足。但是很难说哪种许可是有用的,同时,在软件被当成一种服务的情况下,这种情况又是如何定义?把一个软件作为服务器的能力使一些公司宣称可以向客户提供百分百的开源,但是这些软件的代码却都是不可用的。
在理想状态下,客户需要为他们从免费、开源技术产品中得到的利益向供应商付费。因为那个还没有真正地实现,开源核心许可和开源软件的云交付成为围绕开源产品可以得到更多利益的主流方式。
注意自由
客户使用或者考虑到这些产品在开源内核许可之内,注意:你购买的企业的商业产品可能不会像开源社区提供的版本一样提供同样的自由权限,在开源社区里,开发者可能曾经是,或者会变成倡导者。
一些公司的开源内核的商业产品是不提供源代码的。这将在未来的行动中,大大降低对开源社区版本的使用。其他的开源内核的商业产品提供源代码,但是只有当你的开源许可是可用的情况下才可以行得通。就这点而论,我们就能容易理解为什么你的公司这么容易从使用企业商业开源内核产品转而使用开源社区版本了。
Gartner的分析师Brian Prentice曾经断定,客户可能最终需要评估和定价一个开源内核产品的企业商业版本。但是,事实是,在开源社区版本和企业开源内核商业产品之间并没有一个明确的划分。
当客户需要使用和考虑是否是“开源的云交付”提供的服务的时候,需要针对行动的自由性考虑两个因素。第一,是否可以在另外的云设施上运行这个产品,或者在客户自己的数据中心?第二,更重要的是,客户的数据是不是被锁定在了供应商的云交付中?
当使用开源许可的产品超向着一个方向发展的时候,对决策者来讲理解“开源”是可以以各种形状和形式使用的是非常重要的。毫无恶意地说,你的解释可能和供应商的解释是不相符的。
【编辑推荐】