首先,开源软件和免费软件是两个概念:
免费软件的例子比比皆是,QQ、微信、迅雷、酷狗、360 等都是免费软件,你可以随意使用,尽情蹂躏;但是,如果你嫌弃它们复杂,自己删除了一些无用的功能,然后在网上发布了一个精简版本供大家下载,那么你就离法院的传票不远了。
开源软件是不抵触商业的,开源的目的也不是做慈善事业,而是通过更多人的参与,减少软件的缺陷,丰富软件的功能,同时也避免了少数人在软件里留一些不正当的后门。开源软件最终还会反哺商业,让商业公司为用户提供更好的产品。
Android 就是大众最熟知的一款开源操作系统,它除了用在手机上,还用在汽车、平板电脑、电视、智能手表等其它硬件平台,小米、华为、OPPO、三星等都是 Android 的受益者,他们都赚得盆满钵满。
很多著名的开源项目背后都有商业公司支撑,它们的开发者也都有正式的工作,享受和我们一样的社会福利;如果一个成功的开源项目背后没有商业公司,这反而是不健康的,社会需要开源和商业之间的互补来促进技术的革新。
开源软件和商业公司的裙带关系:
伟大的开源软件的背后都有巨量的资金流入,没有资金支撑的开源软件是无法长久的。那么,开源软件究竟是如何盈利的呢?
有些开源软件不但有一个免费的基础版本,还有一个收费的商业版本。免费版本能够促进传播,让用户爱上该软件;收费版本功能更加丰富,还提供技术支持。这种情况在开源界非常普遍。
例如 MySQL 就同时推出面向个人和企业的两种版本,即开源版本和专业版本,分别采用不同的授权方式:开源版本完全免费以便更好的推广,而从专业版的许可销售和支持服务获得收入。
很多软件在使用上不收取费用,但当用户在使用产品遇到困难,需要技术支持的时候,就需要付费了。技术支持收费的这项服务,也是一些开源公司的生计之路。
例如,最大的开源软件公司 Redhat 被 IBM 收购,卖了 340 亿美元。Redhat 虽然提供免费的 Linux 发行版(当然也有收费的版本),但是当使用者遇到技术障碍,或者想升级硬件的时候,Redhat 可以提供付费支持。
举个例子,纽交所在用免费的红帽 Linux 系统交易股票。英特尔最近升级了处理器,纽交所想用新处理器提高效率,但这需要有人为新硬件部署新的系统和应用程序。同样的事每隔几年会发生一次。纽交所可以养一个团队自己完成所有系统维护、开发工作,也可以花钱请红帽的工程师来做。相当数量的企业用户都选择了后者。
JBoss 就是这种模式的典型代表。JBoss 应用服务器完全免费,而通过提供技术文档、培训、二次开发支持等技术服务而获得收入。
开源软件出版商 O'Reilly 公司也是这种模式,它不遗余力地联系开源软件的权威人士,组织各种开源软件的会议,虽然知识是免费的,但承载知识的书籍却是收费的。
例如 PHP Live ! 就是一种构架于 PHP、MySQL 之上的开源软件,它可为企业用户提供实时交谈服务。目前已经有数十家公开提供 PHP Live! 托管服务的应用服务提供商。
比如 IBM、HP 等服务器供应商巨头,通过捆绑免费的 Linux 操作系统销售硬件服务器。SUN 公司近期将其 Solaris 操作系统开放源码,以确保服务器硬件的销售收入,也是这种模式的体现。
这些巨头每年在开源软件领域的投入巨大,但这一切并非是做善事,它们可以从配置了开源软件的硬件中获得巨额回报。
开源免费的软件可以满足大部分用户的需求,但是也有很多用户需要一些特殊的定制服务,这个时候软件公司就会收取一定的费用。
虽然代码是开源的,但很多作者会采用一些开源协议来限制自己版权问题,如果用户想要去版权,是需要另外付费的。
很多开源软件都有一些捐款渠道,喜爱该软件的用户,或者该软件的受益者都可以进行资金支持。
例如,Python 就有一个软件基金协会,它收到了来自 Facebook、Amazon、Google、Redhat、Microsoft 等巨头的赞助。
这些公司也不傻,他们为什么会赞助 Python 呢?因为这些公司大量使用了 Python 语言,他们希望 Python 能够持续发展,如果 Python 倒了,他们也会跟着倒霉。