软件开源新模式

2024-08-21 08:58   北京  

1985年,Richard Stallman 创建自由软件基金会,从那时起,开源软件逐渐进入大家视野,到今天,开源软件已经成为软件的主流模式。

很多人总是把开源软件与免费软件混为一谈,其实,开源软件背后仍然有商业模式,并且,商业模式的发展也越来越好。

开源的理想主义阶段

第一款真正具备影响力的开源软件,是Linux.

1991年8月份,一位名叫 Linus Toravalds,尚在读大学的芬兰学生在新闻组上发布了一份声明,他创建了一个类 Unix 操作系统的自由内核。可当时的 Linus 打心眼都没有想到过他写的这个内核,日后被称之为 Linux ,能够吸引众多的精英来一同开发,更没有想到过这最后成为最为成功和著名的自由与开源软件程序。同 GNU 项目所开发出的工具相结合,Linux 获得了空前的成功。

经过30多年的发展,Linux干掉了一系列的操作系统,象当时非常红火的IBM AIX,HP Unix, Sun Solaris,到今天几乎再也见不到,连带相关的CPU架构都被干掉了,这充分说明了开源生态的威力。

Linux一直是免费的。Linux的生存发展,主要靠Linux 基金会。
2000年,Linux基金会成立,赞助Linux创始人Linus Torvalds的工作,该基金会和来自世界各地的开发人员合作。Linux基金会保护其成员和开源开发社区资源,以确保Linux仍然是免费的,并在技术上保持先进。

这是个理想主义时代,但商业模式仍然存在。按Linux的GPL License,有这么一句话:

您可以对转移副本的实际行为收取费用,并且您可以自行选择提供保修保护以换取费用。

就这句话,造就了Redhat,Suse等一批巨大的公司,这些公司再给基金会回馈,良性循环。

所以,软件只要有人用,就不用担心钱的问题,但是,钱归谁,是个问题,因为总是有流氓出现。

商业公司运作的开源

Linux之后,开源如火如荼,出现很多有名的软件,象Apache系列。但纯靠捐赠,毕竟收不确定,没有主动权,也不是长久之计,于是,出现了许多公司运作的开源软件。
Mysql是一个经典的例子。
1995年,Mysql 正式开源,随着后来Web的发展,LAMP(Linux,Apache,Mysql,PHP)开始风靡,以免费的形式迅速占领市场。免费的同时带来一个问题,公司收入降了80%。
压力之下,2008年,Mysql被Sun Micorsystem收购。时运不济,Sun 又被Oracle收购。在Oracle收购之后,Mysql演化成两个版本,一个商业版,收费,一个免费版。不用想,免费版肯定弱很多。
Oracle在商业上比较狠,看看对Java的动作也可以了解一些。但由于它是整体收购,这些做法完全合法,虽然在长期的mysql免费用户看来有点流氓。

其实还有个比Oracle更流氓的,是AWS。

MongoDB是领先的NoSql数据库,公司化运作,开源。开源遇到云,又多了一种商业模式,就是把软件以服务的形式提供,类似SaaS或PaaS。AWS直接把MongoDB拿过来,作为自己的服务向客户提供并收费。

这个不违反MongoDB的License,但却是实实在在的白嫖,因为他没有给社区一点捐赠。双方的纠纷闹得纷纷扬扬,最后的结果是:MongoDB修改了License,加上Server Side Public License (SSPL),禁止了这种拿来提供云服务收费的模式(后来这种也被称为伪开源)。AWS则放弃了MongoDB,自研了DocumentDB,双输的结果。

瞄准生态的开源模式

这几年的公司开源越发普遍。

大模型火了以后,有个开源也非常火,就是Langchain,从0.1版本之前就开源了,基于MIT License,商业应用随便。
还有个更狠的,最近的安全公司,叫Demisto,做CIAM的,自己运营SaaS服务,也全部开源,用Apache License,商用随便,但必须保持开源。

这些公司为什么要早早的开源呢?他们是雷锋吗?

当然不是。今天的软件早已不是独立软件的时代,生态才是软件生存发展及竞争力的根本。开源,让客户更了解软件的细节,更容易培养生态。同时,所有的客户在使用这些开源的时候,还会给社区(其实也就是公司)回馈,你看,也可以白嫖啊,一举多得。
毕竟,软件的拷贝成本接近0,理论上,一类软件只需要一种,谁最后胜出,赢者通吃。到真正胜出那天,SaaS服务,修改Lincese,闭源,收费,有什么不行的?Oracle的Mysql不就是例子吗?

这就是阳谋,就赌别人干不掉它。其实干掉又怎么样呢?多少屠龙少年最后都变成恶龙。路没错,就看谁走得好。

国内的软件企业如何应对

一些国内的软件企业,还是老思想,期望做个软件,藏好代码,规模销售,规模赢利。其实,你的软件如果有好的开源,很难想象你几十人上百人能跟开源社区竞争。如果你的领域都没有开源,很可能你的领域不是那么通用,因为通用的场景,很多都有开源了。

实际上,甲方一般是不能直接用开源的,就以操作系统为例,虽然内核开源了,可以免费拿到,但操作系统的使用便利性,生命周期内的服务支持,都是需要的,这就是Redhat的价值所在。Redhat被IBM收购,价值是310亿美元。这个是一点都不流氓的。

还有一种软件比较复杂,还要跟业务结合,象Hadoop,Mapreduce这些,很少有甲方有能力养一个团队去维护它,还有一些定制需求的场景,对服务的需求更加强烈。

所以,不用藏着掖着,大大方方地用开源收服务的费用,没什么不可以的,如果能对社区有投入,有回馈,影响社区及软件向自己有利的方向发展,则效果更佳。华为在Linux,OpenStack等软件上就是这个策略,不影响赚钱。这就是Redhat模式。

国内有一些开源已经做得很好了,也有很好的影响力,但没赚到钱。去年还听说有一个有名的开源软件的作者养不活自己,要把开源的工作停掉。捐赠的太少,白嫖的太多啊。

我从大厂出来,虽然骂AWS流氓,但也觉得这些开源软件的所有者也有很大的问题。你为什么非要捐赠,不能直接收钱呢?
因为各家公司都没有捐赠的预算。我用你的软件,捐赠多少钱合适?捐多了,公司不愿意,捐少了,还被笑话。你不如给我定个价格,我自己算算,用你的软件划算,还是自研划算,如果用你的划算,我有购买的预算,直接买就行。

所以,还是那句话,只要软件做得好,不用担心钱的问题,反而是你关了开源,真正双输。有什么不行的呢?改改Lincese就行了。Redhat,Oracle的路都可以走啊。这就是个生意,不要被理想和当初的承诺把自己框住。

赚钱吧,不寒碜。何况你还是靠真本事站着赚钱呢。

END


AI与安全
理清逻辑,找到规律,看清趋势。作者前华为云高级安全专家,现为独立顾问。
 最新文章