开源20岁了,是该庆祝一下了

能够活在开源的时代毫无疑问是幸运的,开源已经20岁了,开源成就了许多人,也是我们现在数字时代的中流砥柱。它的存在和发展意义值得你我去深思和挖掘。

Wed Jan 17, 2018 | 2200 Words | 大约需要阅读 5 分钟 | |

开源的20年

开源促进会 要在今年隆重的庆祝开源诞生20周年,人类习惯于以十年为一个阶段,开源即将进入它的第三个十年,若是将之比喻为我们人类本身的话,正是意气风发的年龄,也是才华碧现的时候。

20年前,也就是1998年的二月份,“Open Source”(开源)被软件所第一次使用,稍后,开源的定义OSD 正式的公布,我们不妨再重温一下OSD的主要起草者: Bruce Perens 的精确定义开源:

‘开放源代码’是为了让已经存在的自由软件对商业更加友好而提出的正式名称,旨在鼓励商业,而且会对验证的许可证进行收集。

为了避开自由软件的硬性规定,当时认同开源的几个大人物,如 Tim O’Reilly,Linus Torvalds,Bruce Perens等人,齐聚加州的帕洛阿尔托,为“开源”一词赋予全新的意义。自从开源出现以来,越来越多的项目认同并加入开源阵营,从最初的Linux、Sendmail、Perl,以及稍后的Python、Apache,乃至最近的Docker、Kubernetes、TensorFlow等。

开源大潮似乎越来越涌

从某种意义上说,开源已经赢得了胜利,它已经超出了当时参与者的想象。开源现在已经无处不在,他是整个互联网的基石,它驱动着我们日常使用的电脑和移动设备,以及相互连接的网络。假设一下,如果没有这些开源软件,云计算、物联网就不可能有今天的规模,甚至都未必创造出来。

单单从技术上讲,我们简单的遍历一下:改变软件交付方式的容器技术实现 Docker 是开源软件,基于容器技术实现编排的 Kubernetes 是开源,再返回头看看大数据的生态圈,Hadoop、Spark、Kafka、Hive、Hue……都是开源软件,当然,2017最火热的领域人工智能,亦是由开源所驱动,如 TensorFlow、MXNet等等

更不用说,Linux占据超算前500名,90%的云计算跑到负载是使用的Linux,以及数不清的智能手机。

微软转型真心拥抱开源,这在20年前是所有人不敢想象的,要知道它认为开源是损害知识产权的获罪魁首。然而就在2017年一跃成为GitHub贡献最多的公司榜首。2018年初,即使保守如本土的公司,如阿里巴巴、百度也都对自己的开源项目作了一些回顾和总结,比如加入某基金会、在GitHub开源了自己的项目等等,即使如AWS,作为云计算的全球老大,也加入了CNCF,并雇佣了Netflix OSS团队的 Adrian Cockcroft, 要在2018年在开源界发力,MXNet 和 ECS 似乎落后了许多。

这已然是一个默认开源的时代,和工程师交流,几乎就是“无开源,不聊天”的局面。(告诉你个秘密,你看下各家IT媒体的首页,如果没有开源相关的新闻或文章,那它一定没有点击率。)

开源将点燃创新之路

每个人都被赐予天国之门的钥匙,但同样,这把钥匙也可以打开地狱的大门。 –Richard Feynman

让我们暂时抛开道德、民主、自由这些话题,单单从工程的角度来思考开源,为何人们会青睐开源?为何开源软件的开发方式正在得到工程师的认同?如:

  • 对待用户要像对待自己的开发的伙伴一样
  • 尽早发布
  • 频繁的集成
  • 高度模块化
  • 多个版本

正如《原则》一书中指出,“极度开放”是取得成功的关键所在。因为只有这样,才能最大的发挥匠人精神,让优秀的想法和付出得到应该有的回报。世界在加速的发展,代码正在吞噬人类,如果不开源,那么依靠自身的力量来应对世界的复杂性、不确定性,将面临非常大的考验,在《技术的本质》一书中,经济学家、技术思想家布莱恩.阿瑟精确的道出了技术是什么,以及它是如何进化的。所有技术产生于已有技术,也就是说,已有技术的组合使新技术成为可能 。并在最后论道:“秩序、封闭、均衡作为组织解释的方式现在让位于开放性、不确定性、以及永恒的新颖性。”

下一个20年

大家应该还记得那本书:《开放源代码——来自开源革命的声音》,书中收集了开源领袖们的文章如Eric S. Raymond、Linus Torvalds(Linux和Git的创始人)、Robert Young(红帽公司创始人)、Larry Wall(Perl语言创始人)、Tim O’Reilly(著名媒体人,web2.0的发明者)等等。20年过去了,重读这本书,作为晚辈的你是否能够完全理解他们的想法和做法?开源已经作为主流的显学,进入人们的视野,并渗透到其它领域,不仅仅只是在软件界发挥力量。作为爱预测的、总是担心被未来淘汰的国人,是否愿意畅想一下开源未来20年的发展?

  • 开源将会是主流的软件工程方法论
  • 开源也是未来软件的主要生产方式(微服务、DevOps已然显出端倪)
  • 商业模式将会变得更加复杂和让人捉摸不透
  • 工程师将变得更加独立和专业,开源让”牛人”的视野更加的开阔,也让自身更加的独立
  • 开源的最终目的仍然是自由,或许伟大的Richard Stallman的理想能够实现,软件终究是自由的。

结语

开源界大人物 Eric S.Raymond 在其天才作品《大教堂与集市》 中指出,95%的软件生产出来是来使用的,而不应是销售的,因此,软件是可以且应该是开源的。

开源是否能够成为历史的终结,这是我们所无法断言的,毕竟影响历史的进程有太多的因素。但是,毋庸置疑的是开源改变了世界,改变了我们。而作为个人的你,踏踏实实的走好每一步路,才是更重要的。比如贡献开源提升自己。