开源之道

本文旨在从一个高度来审视开源,以开源为核心进行外延,内容涉及人类、软件、乌托邦、商业、产品、工程、创新、社会、心理、治理、社区、教育等等领域,作者以弱小的学术素养,妄图探讨一个大的问题。除了孜孜以求的精神之外,就是探索本身了。

引子

多年以来一直从事和开源相关的工作,从接触到自由和开源软件文化,到以软件为职业,再回归到布道,一晃已经15年过去了,15年,对于一个人的生命周期来说,在从青年到壮年的最为丰富多彩的一段时间,在其中有过欢笑、有过沉沦、有过奋斗、有过挣扎、有过冲突、有过彷徨,但唯一没有做的是放弃。从好奇,到参与,再到宣扬,一路走来,遇到过很多人,也经历了很多事,自己也努力的追求着本质。

于是,希望将自己对于开源的理解写下来,表达出来,让更多的人受益。

自信与宏观思维

毫无疑问,认识成长于社会的环境当中的,在自己的头脑没有成熟到一定程度时,是会被环境所左右,而武装自己的头脑,唯一的办法就是不断的训练它,让它不断的吸收新的知识、体验。其中,读书是至为重要的一种方式,我已经忘记我是为何一直以来都喜欢读书的,从能记事起,就喜欢翻书,脑子里总是有太多的问题,而现实中的人们或其它媒介又无法作答,唯有书籍能带给我不断求索的答案和方法。

随着年龄的增大,身边的人们在远离校园之后,读书的人也越来越少,而我也越来越少的和这些人来往,久而久之,连我的家人都在劝我,少读点书,有什么用?徒增烦恼。当然更多的是现代职场重要的社交关系——同事,大多数人认为我是在”装逼”,因为大多数人也是这么做的。于是,读书成了我一个人的事情,就这么过了许多年,当微信朋友圈可以贴标签的时候,读书(那些愿意分享或不嫌弃我分享的)也是我维护的重要的一条社交纽带,当然,自己的成长也是通过读书而受益无穷。对于各种事物以及自己都渐渐的有了一个清晰的轮廓。自信也随之而来:读书不是什么缺陷,而是一种习得性的能力。 不是所有的人,都能通过读书来学习和认知这个世界,也不是大多数人能够沉浸于书中的世界进行深度思考,读书和人类其他很多活动一样,是需要花大量的时间和精力来习得的。

获得对于自己读书的自信之后,也仍然在窥探着自己的选择倾向和思维习惯。大约是大学时代所接受的系统论,让我对于遇到的每件事情,总是希望以系统的视角来思考问题,即使是计算机这门庞大的学科,我最喜欢的一门课程也是操作系统,职业生涯也是围绕 GNU/Linux——开源的操作系统。那么这样就让我去思考和观察很多方面的内容,比如在职场,我会探究管理、商业、脑力劳动者、人力资源、人性、团队协作、职场伦理等;在家庭,我会探究教育、伦理、顺从与人文、母亲的力量、社会关系;从我内心的角度,我会探究我为什么会有那么多欲望、别人怎么看待我、我的自卑情节是从何而来等;甚至面对一些大的事件,我会学习和探究古今中外的历史、贸易往来、封闭与开放、道德与宗教、科学的本质;回归自身,我的体育技能如何提高、肌肉量怎么增、如何控制自己的本能、冥想等等。

我后来发现,这样的思维方式也是蛮难得的,生活中至少我遇到的人极少会这么去思考,因为我去和人们讨论的时候,很多人都信心满满的认为自己有答案,非常简单的因果论。或者是靠本能的总结规律(世界杯上届冠军本届小组赛不出现、中国人做视频能上市之类的类似原始人摸鼻尖就能祈祷天会下雨。)极少数拥有智慧的人,会考虑诸多因素,对生命和万事万物保持着一种敬畏和学习。这样,我又发现我仍然在少数人里,干脆就放任自己的思路一路探索下来。

那么就有了我这篇日后会扩展为一本书籍的文章——《开源之道》,围绕我倾注时间最多的开源软件领域,来扩展一下整体的宏观思路,尝试理清这里面蕴含的奥秘,通过过去的分析来多角度的探视这个世界,进而去领悟生活、人生。

开源之道的系统框架

若是什么事情都能够从很高的角度来看的话,确实能够有掌控大局的机会,尽收眼底的上帝视角是我们渴望达到的境地,我们都希望自己能够少犯错误,认清未来,能够将基因传给下一代,在有限的生命中探求更多。以下视角不过是一种妄想罢了,只要做出选择,就会挂一漏万。

或许是一名受训的工程师希望将自己的思路以图表的方式一厢情愿的表达出来,但是明确的解释却需要我在未来花更多的时间来做这件事。每一个细分的内容都有无穷无尽的选择和知识,而不同的选择,就会导致最后结果的不同。大约是了解过一点大数据的知识,所以开源之道的内容,是没有因果论的,只会去尽最大可能去推导相关性,一如去证明吸烟是否有害健康一样,不会陷入某个具体的个例来进行因果决定论,而是通过尽可能多的收集数据(其它学术论文及上市书籍等),开源软件乃至开源本身渐渐成为显学,成为人类历史演化下的重要里程碑,一定有其内在的深层的原因,以一人之力,怎敢下定论,顶多是找到并理解现象罢了。

乌托邦

人类的想象力是非常丰富的,令人叹为观止的。在人类的想法中,无疑人如何能够理想的生活,所有人都是满足状态的,也是让所有人奋不顾身去努力追求的状态。有丰富的物质,每个人都各得其所,所有人都遵循道德,根本不需要法律,没有争端,所有人一律平等,人人无忧无虑,宛若宗教中所说的天堂一般。

但是,正如其名称一样,它只存在于人们的幻想当中,是人类所能想到的最高社会标准。

物质文明

以商业为基础的资本主义,倡导物质文明,追求经济利益,守信而重视法律,承认人是自私的动物,有很多本能上的弱点,以科学来推动世界发展,就是这样一个思路,带动了全球贸易化、工业革命、信息革命,解决了大多数的困扰人类几千年的饥饿问题,不仅人可以在很短的时间内从地球的一端到达另外一端,而且还能够毋须人旅行,而网络视频随时随地将任意的两个人或几个人链接起来。

随之而来的是所谓人工智能时代,人类将一切繁重的生产性的劳动全部移交给了机器,哪怕是开车出行或一段美妙的晚餐这样的日常琐事,人类似乎真的如果不去思考和追求,就成了所谓的“无用之人”,甚至都在考虑是否打败癌症、人体衰老这样的难题,不仅要彻底享受,还希望永远这么进行下去。

技术的进步,正在一步步的改善着人类的生存状态,人类甚至能够计算出来自己需要每天摄入多少能量就足够应付所有事情,而不是交给大脑将多余的能量转换为脂肪,同样在穿衣、住房、出行方面均有着非常大的跨越,中国的铁路可以修到北极圈,至于会不会加速北极的冰雪融化速度,那不在考虑范围之内。

从承认弱点到理想世界

人类的终点究竟在哪里?至善至美的世界的存在性在经历几千年的战争、屠杀、蹂躏,已经让人们失去了信心,也甚至将这个问题交给了哲学家们去思考了。与其无法达到妄想的彼岸,不如承认当下,做一些力所能及的事情,尽情的享受人类该有的幸福,偶尔关怀一下正在消失的物种,爱护一下珍稀动物,利用知识和科学去增加粮食的产量,让一些物种更具观赏性,以法律为武器来捍卫人类最后的尊严。

人性本恶还是善,至今仍在讨论,尽管认知神经学家和基因学家设法去证明,人类的基因并不是人们想象的那么简单,尽管携带的内容很少,但仍然无法从道德上来证明,只能说基因要生存要繁衍,于是会详尽一切办法让自己存活,包括将自己的同类毁灭。

然而,人类社会仍然没有失去希望,无论是宗教,还是类宗教的世俗国家,都会从意识形态或其它科幻的视角来描绘,人类最后的理想世界终究会到来。没有独裁者,人人各司其职,社会和谐安定。

于是,人们仍然需要奋斗,需要努力的前行,摸索寻找实现理想的最佳状态。

社会的高度分工

人类有各种各样的需求,著名的人文心理学家马斯洛先生的七层理论深入人心,更高的层次,如尊重、自我实现等不是我们要讨论的内容,我们今天要讨论的是实现人类基本需求的方面:衣食住行。

要满足全球70亿人口的这件事情,如果没有科学的帮助,人类依靠大自然根本无法实现这样一个需求,更何况还有生物界其它更为强壮的竞争者的存在。科学的发展帮助人类实现了这个梦想,大体可以分为两类,一类是技术的进步,另外是社会分工的创新。

技术的进步,我们生活在21世纪的人类亲身经历了它的强大:扔在日本广岛的原子弹足以让所有人感到世界末日的灰暗;互联网的诞生让人类获得的信息以指数的方式激增,也让彼此的联系从未如此的紧密;在AlphaGo打败李世石和柯洁的时刻起,人类面临前所未有的挑战;无人驾驶汽车开在公路上,将解放人类驾驶的乐趣;区块链的应用,很多人寄希望于改善人类社会的信任关系,从此再无藏污纳垢之地;转基因技术,解决了人类的粮食匮乏的问题;空调、代糖、高铁、外太空探索、电影、虚拟现实、集装箱……几乎无法穷举下去。

伴随着技术的进步,是社会分工的创新,因为技术除了自身的进化以外,还有一个民主化的过程。福特将汽车的制造从手工作坊搬到了流水线工厂,不仅价格降低,生产效率提高,也整整提升了一个时代的就业和人们的幸福指数;技术进步的同时,也在创造出不同的岗位,据统计,现在人们所从事的职业,超过一半以上的都是近20年来诞生的,比如程序员、前端设计师、互联网产品经理、大数据分析师、基因工程师、外卖小哥等等,而每一类的职位均需要不同的分工合作方式。

这个世界的运转只会越来越快,越来越复杂,也越来越细化,细化能够体现到衣食住行、日常生活起居的点点滴滴:我们的每一个生活细节后面都会有很多人在工作,无论是常见的杂货店,还是更具规模的商场,亦或是流行的电商,都有工厂、物流、仓储等巨大的供应链在背后支撑和运作。

这一切都是因为单个的个人是渺小的,微不足道的,但是确实构成现代工业的最小单元。伴随着世界的加速的,就是对于信息处理的加速,你猛然间环顾一下自己的生活,完全是由大数据和算法来驱动。而这些就是以软件为基础的。

软件正在吞噬世界

在2011年,硅谷著名创业者、投资人马克安德森发表了一篇文章《为什么说软件正在吞噬世界》,他在文中举了几家著名的美国公司,如Apple、Amazon、Google、FaceBook、Netflix、Twitter、Pixar、Microsoft、Linkedin,这些重要的创新公司,无一例外的都是软件公司,以软件来交付人们的日常:音乐、日常购物、搜索、社交、电影、短消息、动画艺术、PC、职场等等,

软件已经无处不在的影响着人们的日常生活。2017年,仍然是业界著名人物Tim O’Reilly 出版了《WTF?: What’s the Future and Why It’s Up to Us》一书,在其中更是强调我们的世界是由算法来驱动的,人类产生了更多的数据,也就催生着更多的算法来优化。

软件已经深深的扎根于人类的日常生活,不妨我们仔细的思考下自己所能遇到的:

  • 亲人朋友联系使用的是社交媒体的软件,除了可以触摸操作的智能手机客户端之外,它还拥有海量信息交换和存储的服务端。
  • 最后一公里的共享单车,使用GPS定位系统和移动终端来和服务器端以及手机的App链接起来,并基于地图和轨迹信息来优化出行。
  • 手机支付
  • 共享出租汽车
  • 购买火车票
  • 在线直播,短视频
  • ……

这个列表还可以穷举很长,总结其中一条最为核心的就是,这些所有的业务,即和人们生活密切相关的都是运行在计算机中的软件程序所驱动。

软件能够提供什么

在商业的世界中,软件以何种形式的价值存在

软件成为商品,可以从copy中获利,还要追溯到商业奇才Bill Gates,以全新的商业模式,打造了Wintel生态系统,从那之后,数据库、ERP、CRM、电子商务系统、广告系统、邮件系统等软件开始以售卖许可为主要方式,开启了软件暴富的新时代。

软件由于其天生的可复制性,使得拷贝一份非常之容易,尽管开发第一个版本需要付出很多工程师的努力和心思,相比于现实中的任何其它有形物体,软件的复制都有着无与伦比的速度优势。

开源软件正在成为软件的中流砥柱

软件,和人类的其它物品一样,生产出优秀而质量上乘的软件是一件非常困难的事。更何况软件是一种纯粹的脑力劳动,需要以全新的协作模式来进行日常的工作。

开源的优势

谈到开源软件的开发模式,我们不得不提及天才般的人物:Eric S.Raymond,他在其著名的论文《大教堂与集市》中论证了开源的软件工程理论。如他所定义的Linus定律:众目睽睽之下,Bug 将无处藏身,模块化、去中心化、快速发布快速反馈等等是可行的,Kernel就是成功的案例。

随着Linux、Apache、Perl/Python/PHP、MySQL/PostgreSQL等开源技术栈的崛起,以及技术的更新迭代,开源已经不再是稀缺,而是一种过剩,架构师在最初构建业务系统的时候,面临的不是创造,而是选择。于是开源项目又有了新的优势:

  • 可以让业务快速的搭建原型
  • 几乎以零成本的方式来进行
  • 让产品迅速进入市场,获得及时反馈

创新,是所有领域最为重要的步骤,随着复杂和加速的世界来临,开放式创新逐渐被商家所认可,企业光是靠自己内部,或者是某个单一的学科,利用外部的力量和跨界的帮助,创新成果屡见成效。而开源天生的开放、透明、协作、多样,无疑是开放式创新最佳的诠释。近年来开源项目已经凸显这一力量,Docker以及众多的人工智能学习框架就是最好的例证。

驱动开源背后的力量

### 案例一,红帽

红帽是第一家将开源软件成功做成商业产品/服务的上市公司,从企业用户的视角来讲,有一家公司提供优质的操作系统,订阅模式,还提供源代码,有着社区沟通的另外一条渠道,和其它的软件供应商相比,更具优势:可以有完全的控制权(至于这个控制权是否真的存在还尚有争议,但无疑可能性是有的。)

而红帽自己生产软件和服务的方式则是独树一帜,在创新、管理、文化、运营上看清楚了很多事,没有犯大的错误。

开源的生产仍然是由人所创造

著名的认知心理学家斯蒂芬.平克,对于人类的成长,尤其是从幼童到成人的过程,做了如下的一番描述:

当我们追忆自己的成长经历时,每个人都会想起自己曾经走过的人生岔路口,那里或许会通往截然不同的人生历程。如果我没有参加那次聚会的话,我就不会遇到现在的配偶。如果我没有拿到那本小册子的话,我就不会了解这个领域并将其作为毕生的职业。如果我没有接到那个电话,如果我没有错过那次航班,如果只有我接到了那个球,等等。生活就如同一场弹球游戏,我们弹起、下落,滑过导槽轨道和缓冲器。或许我们充满冲突的历史以及各种擦肩而过的际遇可以解释是什么让我们变得与众不同。

是否以开源的方式来生产软件,抛去技术本身之外,选择才是只为关键的部分。一位工程师是否愿意加入开源的项目中来,和他自身的选择有着极大的关系。

人是一种群体性动物,根据自身的教育、经历、想像、意愿,最后塑造为自己希望中的样子。

人就生活在当下

尽管人类经历了几千年的进步,然而,其实,人刚刚从暴力走出来没有多久。无论是宗教的天堂,还是政治学者的乌托邦,人类离理想中的世界,还很远。尤其是利维坦式的国家到处都是。

为了遏制人与生俱来的暴力,人类建立了民主政府、极权政府,继而开办教育,让更多的人习得文明,

历史的包袱,是很难丢的掉的,尤其是寻求某种正当性的时候。比如中国有3000年的历史,是世界上最大的帝国之一。向以天下自居的中华民族,在近代却遭遇了前所未有的屈辱。从1810年,马尔卡尼拒绝乾隆下跪的那刻起,世界就没有再允许过中国独自封闭的走下去,而是不断的被侵略、蹂躏、撕咬、征服,最终变成了现在的这个样子,然而,像当年的义和团一样,现在依然有人在想着返回到马尔卡尼来之前,中华就是天下独尊,平行于宇宙的独立世界。人的心理认知,一旦相信下去,拒绝承认现实,那么不用过多久,他就开始从古籍中寻找中国帝国是世界的唯一了。

母亲在教育孩子的过程中,起着非常关键的作用,曾有人说:“民族的较量,就是母亲的较量。”,尽管这句话,是带着人青睐战争、预防对手先攻击的天然倾向。但是从侧面则说明了母亲的重要性。中国式母亲,以能教出听话孝顺的孩子为最高准则。