首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开源的7大理念

开源的7大理念

软件正在慢条斯理地吞噬世界,开源正在慢条斯理地吞噬软件业。

软件正在吞噬世界?是的,对于购物、吃饭、健身、交停车费都需要使用软件的年代,对于平均每人每天都要花费5到6个小时使用手机软件的年代,有什么理由不相信软件正在吞噬整个世界呢。

开源正在吞噬软件业?是的,因为在软件越来越富裕的年代(也即软件不再稀缺),不开源的软件,最终是没法和开源软件竞争的。举个简单例子,如果有人要在很多个文件加密软件中选择一个使用,在功能和价格都差不多的情况下,选择开源的还是闭源的?当然要选择开源的,因为谁知道闭源的软件中,会不会有后门?

前言

开源的成功程度,或者说开源的渗透程度,从中国银行业的广泛采用就可以看出来,银行作为一个在IT方面相当谨慎和保守的行业,在2012年(一个大约的年限)之前对开源基本上不屑一顾,使用的基本上全是商业软件(这里是指专有软件),他们认为商业软件更专业、质量更高、更可信赖、更有保障,他们中不少人视开源软件为异类,对其功能、性能、安全性表示担忧,最重要的是,他们担心开源软件出问题后找不到“原厂”解决问题和“承担责任”。

然而就在2012年以后,银行业逐渐增加了开源的使用比例,这里面有很多原因,最重要的一个原因是,在Linux面世20年后,很多开源软件已经成为比商业软件更好的存在,以至于咨询商、集成商、开发商们在为银行提供解决方案时,所拿出的最佳方案已经是基于开源的方案,银行(作为甲方)已经无力拒绝。比如,如今当一个银行要建设其自用的云平台时,在咨询和调研一大圈下来,他几乎一定会选择基于openstack的方案,如果想使用容器技术,就几乎一定会选择容器编排软件kubernetes,这时,已经顾不上有没有“原厂”了(事实上还是有服务商兜底),因为没有太多更好的选择了。

银行虽然还在使用Vmware、Oracle、Websphere、Weblogic,但是KVM、Mysql、Apache、nginx的渗透已经越来越严重,多数银行的Linux主机数量早已超过了Windows服务器,因为Linux早已成为整个世界的主流的服务器操作系统,而且还有像Redhat这样的商业支持,为什么不使用呢。

如果有条件,你可以实地调查一下,各家银行的IT部门,在最近5年内,已经不得不正面开源这种“新事物”给他们带来的“问题”,因为对开源的引入、使用和运维,显然和以往闭源软件有明显不同,他们开始写出开源软件使用管理办法,并指定专门处室来负责管理。

而那些有先见之明的企业(尤其是互联网企业),早已组建了开源办公室,早已把自己的整个系统建立在开源软件之上,并且早已在开源世界投入了大量的资金和人员,毫无疑问,他们也早已从开源中获得了巨大的收益。

那么,开源到底依靠什么,让自己大获成功?

本文分析了开源的7大理念,有助于读者更好理解开源的本质要素,这些理念为“完全自主”、“高度开放”、“自发自治”、“自下而上”、“自由竞争”、“赢在声誉”、“社区赋能”,如果你觉得已经从字面意思都完全理解了,可以直接翻到文末领取福利

注:在读这篇文章的时候,你会发现,这些理念事实上是交织在一起的,很多事例同时命中多个理念。因为开源本身就是一件事,我只是从不同侧面对其进行了描绘。

注:本文所称的“黑客”采用的是黑客(hacker)的原始含义,也即黑客是热衷于计算机软硬件的技术高手,而不是媒体上所说的计算机犯罪分子。在一定程度上,本文不再区分“黑客”、“程序员”这两个概念,你可以认为他们是一回事,也可以把黑客看作是技术高超的程序员,总之,黑客是一个正面概念。另外,本文也不再区分“企业”和“公司”,不再区分“开源项目”和“开源软件”,而认为它们是一回事。

1、完全自主

开源之所以能够大行其道,是因为所有程序员都喜欢源码。

这就是开源的原生动力。

黑客希望自己有完全自主和完全可控的世界,这和其他人没有两样,但黑客有可能在计算机软件领域实现这一点。

没有源代码就无法掌控世界吗?是的,如果一个操作系统是闭源的,黑客在使用操作系统时遇到bug而无法修改,遇到需求而不被采纳,试图研究而无从下手,遇到垄断、高价、霸王条款而无可奈何,哪里还谈得上掌控世界。

再如,黑客写程序,他希望有一个自己能够控制或者是能让自己放心的编辑器,不仅仅需要这个编辑器足够好用,而且最好不会有后续的麻烦,比如不会有license的麻烦,不会有厂商停止服务的麻烦。黑客希望这个编辑器能尽在掌握之中,遇到bug,自己或者有人能将其修复,一些想要的功能,自己或者有人能将其实现,而且最好是,自己怎么折腾这个软件,也不会陷入法律方面的麻烦。

也就是说,黑客喜欢在一个无拘无束的、自由自在的环境下,干自己喜欢做的事,这是多么美妙!

黑客想要开源的操作系统,想要开源的编辑器,还想要开源的编译器、开源的浏览器、开源的数据库、开源的web server、开源的云环境、开源的虚拟机软件、开源的大数据工具、开源的人工智能软件。。。总之,如果一切都开源了,这就是黑客感觉最自由和最自主的环境,这就是黑客的理想。

如果很多人都有这样的需求,而又有人能把它实现,那这件事就必然会发生。

人类社会是很有意思的,一些人的需求,会成为另一些人的动力,当程序员们渴望源码的时候,自然就会有黑客奉上自己精心打造的源码,不管他们是否意识到,在所有的需求满足背后,都暗藏着丰厚的回报。

当黑客们想要开源操作系统的时候,Tanenbaum带着MINIX出现了,当人们希望它有更多的特性时,Linus拿出了Linux,当人们需要web server时,NCSA拿出了Apache,作者一开始开源自己的代码时,并没有想太多,可能仅仅就是想说:“兄弟们,看看我写的这个东西怎么样?你们试试用一下?有啥问题,或者有什么新想法,欢迎给我发邮件!”

时至今日,在企业越来越多主导开源的年代里,这种原始的动机仍然存在,前段时间开源的TDengine,其主要作者陶建辉在文章1中写道:

2、高度开放

3、自发自治

4、自下而上

5、自由竞争

6、赢在声誉

7、社区赋能

后记

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190818A0JJFL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券