开源软件的商业模式演变分析(二)
开源软件的商业化
开源软件在几十年前刚起步发展时,最主要的理念是打破闭源软件公司的垄断,也就是Microsoft、Apple、IBM等这些闭源软件公司,期望让所有人都能无条件使用软件,开发者间可以彼此互相学习,也因早期的开源软件是针对开发者,比较不在意UI/UX,但这对于非开发者而言,非常不友善,一般使用者基本上是不会去直接使用的,再加上当时网络还没大量普及,使得开源软件的传播就只局限在软件开发技术圈里,但开源软件的高性能和灵活性,还是透过开发者的口耳相传,在软件开发界慢慢传播开来。
而如上面所说,最早开源人士的理念是所有人都能无条件使用,因此对于将开源软件拿来商业化,一开始非常反弹,认为怎么可以拿来盈利!但后来随着时间推移,也逐渐调整想法,为什么?
因为大家体会到,要先生存下去,才有能力去做更多想做的事情,如果开源软件完全不能用在商业行为,那开发出来的意义在哪里?
况且只靠理想是很难吸引到更多人加入开源的行列,毕竟「有付出也有收获」是大部分人的基本需求。因此怎么将开源软件商业化,也经过了一段时间的争论,后来社群组织协调出透过授权License来取得平衡,这部分有点复杂就不多说了。那为什么现在开源软件能越来越蓬勃发展呢?下面从几个角度来探讨:
从软件公司角度:底层开源,节省开发成本,决战上层商业模式
为什么原本的闭源软件公司,渐渐愿意开源了呢?因为不管是软件或硬件,所有技术的发展都像金字塔一样,底层技术要越宽广,上层的发展才能越高。先来看硬件产业的技术发展,任何产业在一开始,一定都是垄断生意,因为在底层技术还不够广时,很容易就被某间公司独占,但随着技术一直拓展,各家都有自己的独占技术了,就会开始互相牵制。
而随着技术领域一直拓展,市场就越来越难被少数厂商垄断,而当几家大厂商掌握的底层技术架构都不一样,反而会造成整个产业的发展是被卡住变慢的,因此当产业发展到一定规模后,几大主要竞争者发现既然没人能完全垄断,只好大家坐下来谈规格整合,让所有硬件商在统一的底层规格上,去开发产品。
软件的发展也类似,软件技术发展到21世纪,牵扯的底层技术范围也一直拓展,渐渐不再是单一公司能独立承担的,没有任何一家能独占所有技术,而彼此的底层技术架构不一样,会造成两个影响,首先,若想让自己的产品更广泛的被使用,就必须花更多时间去开发底层技术,导致开发成本增加;另外更重要的是,代码安全的问题,因为软件运行时是看不到的,若没看过程序代码,谁也不知道里面是否藏有后门,要用别人的底层技术都会有所顾虑。
因此各大软件公司开始思考,若把底层技术开源,一方面吸引更多人来帮忙开发、检查、维护,不但降低了开发成本,程序的品质反而更好,此外大家也都看得到里面有没有恶意程序,就不用担心安全的问题,可以提高技术传播率。到了现在这个阶段,想办法让更多人使用自家的底层技术,来开发上层应用程序,反而是现在软件公司极力推广的,因为使用者越多,自家产品的影响力就越大,也可以排挤竞争对手的技术。
那底层技术开源了,各公司间怎么竞争呢?此时各大软件公司就不再纠结于独占底层技术,毕竟这其实是吃力不讨好的。
虽然不可能完全不研发底层技术,但是将底层技术交由全世界广大的开发者来协同开发,可以省下这方面的资源,转而专注在中上层的应用程序APP,应用程序就不是开源的软件,而是闭源了,也是各家借以盈利的核心。
同时决战于商业模式策略,这才是软件公司打的如意算盘,关于商业模式的发展后面会再谈。
从产品角度:降低销售成本,快速取得市场回馈
从产品的角度来看,原本的闭源软件要做销售,其实是件很辛苦的事,要说服别人来使用自家的产品,需要花费许多销售成本,这也是为什么在所有的盈利公司中,销售部门都扮演很重要的角色。而反过来看开源软件,使用者可以先自行下载,了解基本的架构和功能符不符合自己的需求,同时靠着社群内的口碑传播,产品传播的速度绝对比原本一家一家上门拜访的销售模式,更能触及到大量的使用者,若使用者对基本免费的功能满意了,觉得需要更进阶的功能,就会考虑去买商业化的应用程序,这就可降低销售人员的成本。
同时,更多使用者也代表了可以取得更多的市场回馈,更能针对回馈去调整产品,让使用者体验更好,形成一个良性循环,这也是敏捷精神的一个延伸。
因此从产品开发及销售的角度来说,开源也是有正向帮助的。
从使用者的经营者角度:减低使用与转换成本
对所有经营者来说,成本永远是要去考虑的事情,而一般考虑使用系统的成本,主要有几件事:使用成本、维护成本、转换成本、使用风险。原本常见的闭源软件收费模式,通常是先一笔高额的授权费用,再加每年的维护费用,而开源软件的收费模式,不需要高额的授权费用,首先就降低了使用成本,而且也不需在还没使用前,就要付这笔授权费,降低了使用风险;同时在产品的选择上也更有弹性,不会被一家绑死,因为开源,更容易找到其他公司的应用程序,转换成本也可以降低。因此使用开源软件也可降低营运成本。
从开发者角度:一辈子的履历,持续了解最新技术
那为什么开发者愿意无偿去协助开源软件呢?现在这个时代,人才的流动越来越频繁,开发人员若都是开发闭源软件,因为牵扯到商业机密,能让外人看的东西其实很少,这表示开发者的技术能力只有少数证据能佐证,若要转换公司,能谈判的筹码就比较少。但在开源社群里的贡献,是全部公开的,所有人都能看到,对开发者来说,这是可以跟随一辈子的履历若技术有一定的水准,在社群里面更是可有效建立个人名声,说不定是软件公司直接来挖角,因为这对雇主来说,也是件好事,可以减低雇用到技术不及格的人员的风险,也因此,现在很多软件公司,会直接请应征者展示在开源社群上的贡献。
同时,随着全世界的开发者越来越多,技术的演变也越来越快,以前学到一个好工具,可能三到五年不用再学新的,但现在可能半年就有一个效率更好的工具出来,因此若没有在社群里持续交流新经验,很容易就落后别人。
不过原本开发者参与开源专案的贡献,除了上面说的名声,无法获得什么实质的收入,但这几年有个新的技术,让参与开源专案的人,也能获得收入了,什么技术呢?那就是分散式帐本技术(Distributed Ledger Technology),也就是区块链,以后会再找时间来介绍区块链相关的事情,而我认为区块链会是未来网络时代一个很重要的底层技术,当然它现在还处于早期的开拓摸索期,无法大量实际应用,但未来它将占有一席之地。
开源软件有这么多好处,所以未来所有的软件都会开源吗?
从上面几个角度可以看出,这就是为什么近十年来,不管是软件公司、开发者以及使用者,都越来越接受开源软件的原因,那这样下去,未来所有的软件都会开源吗?我认为不太可能,就像在前面提到的,软件公司愿意将底层技术开源,但不会将上层的应用程序开源,因为这是他们赖以获利的核心,
而现在会愿意将底层技术开源,只是因为从整个赛局来考虑,这样做可以让他们降低在底层技术的成本,转而专注在核心技术,来达到更好的获利,但绝对不会什么都开源,如何盈利还是公司最关心的事,而独占生意还是利润最高的生意。
下一篇就来谈谈,开源软件一路以来的商业模式是怎么演变的。
本文翻译自李政霖BLOG。