我偶然读到一篇有趣的论文,“开源基金会的经济案例”,作者是德克·瑞尔,他是美国加州大学弗里德里希-亚历山大分校的教授http://dirkriehle.com/publications/2010/the-economic-case-for-open-source-foundations/并认为其他人也会对此感兴趣。本文主要围绕以下几点展开:
- 基金会作为项目的管理者,其职责是提供“资金支持和法律确定性,使软件的生存更少地依赖于创建它的个人”
- 社区开源(基金会)与单一供应商开源(由一家公司开发软件)的区别在于“除了从销售软件和服务中获得直接收入外,单一供应商商业开源”。
- 软件公司加入并支持基金会来开发社区开源的几个经济原因:
- 产品成本节约
- 增加了补充产品的收入和销售
- 发展潜在市场
目前有许多开源项目是通过基金会运行的,也有一些是由单个公司运行的。我相信这两种运行项目的方法都是有效的,而且都不是最好的。例如,一个基金会不仅允许企业社区分享资源,还允许资金来帮助维持项目。单一的企业开源项目由单一的来源提供资金;然而,加入项目的贡献公司将自己作为项目的重要干系人,因为它们为开源解决方案发布产品并基于此解决方案。仅仅因为这些公司没有为项目提供资金支持,并不意味着他们承担的义务会减少。事实上,他们给上级组织造成了巨大的压力,迫使他们正确地运行社区,或者他们可以在任何时候分支项目并招募其他合作伙伴加入他们的工作。我相信这种灵活性给了他们对项目更多的控制,而不是简单地写一张支票并被困在一个基础项目中。
本文明确指出了这样一个基本前提:让公司聚在一起共同创建一个单独的开放源码平台来作为解决方案的基础,这比让每个公司都开发一个平台的专有版本在经济上更有优势。开放源码项目如Xen.org、Apache、Eclipse、KDE和GNOME清楚地说明了这一思想。这篇论文详细介绍了分享开发费用和创造动力以扩大一个特定市场的好处。我完全同意所有这些想法,但有一个问题我没有一个明确的答案——为什么社区必须作为一个基金会来运行,而不是由一个单独的公司拥有?
当然,人们会指出Oracle收购Sun Microsystems所发生的事情,以及交易中涉及的一些开源项目的问题。在…情况下开办公室我仍然可以拿到产品,但我注意到的是底部的标识从Sun变成了Oracle;然而,一大批开发人员对Oracle的许多方面都不满意,他们决定分拆这个项目来开发一个新产品,LibreOffice,同时也形成了一个基础,文档的基础上,监督新项目。在这种情况下,我们既有运行开源项目的单个公司,也有构建竞争开源解决方案的基金会。这两个项目都在向前发展,消费者是赢家,因为竞争总是有益的,而项目管理的形式(单个公司或基金会)无关紧要。
你觉得怎么样?在运行大型、多公司的开源项目方面,基金会真的比单个公司更好吗?只要软件继续向前发展,谁管理一个开源项目真的重要吗?我对你的想法很感兴趣……