什么是开源软件?
2018年的互联网世界,有两个重大的并购事件,上半年先是Microsoft买下知名开源社群GitHub,下半年蓝色巨人IBM买下开源软件公司Red Hat,被并购的两间公司有个同样的关键字,开源。
什么是开源(Open Source)?开源这个词是相对于闭源,
简单来说,开源就是将软件代码向所有人分享,包含完整的开发代码,并可自行复制、修改、散布,不会有收取您版权费用的问题。
而闭源就是版权是属于某个人或组织的,其他人要使用,必须先取得授权(有偿),且就算获得使用权,也无法拿到完整的开发代码,更不用说复制、修改、散布了,盗版软件就是违反了闭源软件的版权费。
当然,哪间公司会把辛苦开发出来的软件拿去开源分享给所有人?这样不就什么都被别人拿去了?而且还分不到钱!但近十年来,越来越多的软件公司,纷纷将自己的底层技术开源,就连Apple、Microsoft这些相对封闭的公司,也都把一些技术开源了,为什么呢?
网络时代前的闭源软件商业模式
开源这个概念其实已经存在几十年了,但目前较常接触到的软件,大部分还是闭源的,像是微软Office、苹果iOS、SAP ERP等等,因为在2000年之前的软件时代,绝大多数软件公司的商业模式是,培养自己的工程师,发展自己的技术,开发出自己专有的软件版本来,刻录成软碟、光碟,拿到市面上卖,卖一套就赚一套,而盗版会严重损害到软件公司的利益,因此那个年代,软件公司都在想办法防止盗版,更不用说把软件开源出去了。
网络时代带来新的商业模式
2000年之后进入网络时代,随着网络基础建设的普及,以及开发技术的演变,全世界的网络人口越来越多,而会写编程的人也越来越多,任何人都可以参与网络上的事情,包括开发软件,很多的软件开发者非常愿意参与开源软件的开发,因为这是一种很好提升自己技术的方式,在开发的过程中,跟全世界的人互相交流学习,能快速提升技术能力,是自己闭门造车绝对无法达到的事情;而同时,也可累积在网络上的名声,因为程序是开源的,任何人都可查看程序的品质如何,一切都是公开、无所遁形的,程序写的好,大家都会为你赞叹!
全世界最著名的开源社群是GitHub,上面有众多的开源软件版本,征求全世界的开发者帮忙开发,对于开发者来说,如果有参与里面某个知名软件案例的话,是件非常骄傲的事情,国内很多知名软件公司的面试,甚至就直接问有没有作品在GitHub上。
这导致了什么结果?因为任何一间公司的资源都是有上限的,就算养了再多的工程师,也多不过全世界的开发者,而如果把软件开源,就代表着全世界的人可以来帮忙开发软件,再加上目前云端技术的成熟,使得依靠开发软件公司的商业模式开始转变,从以前的卖断套装软件盈利,转为提供平台,订阅服务,发展自己的生态系统,这样就会促使越来越多公司把一些技术走向开源,这样的新商业模式究竟怎么运作,就留到下一篇文章来谈。
本文翻译自李政霖BLOG。