技术与历史

  • 杨赛

2013 年 8 月 27 日

话题:架构

昨天跟 CSDN 的同学一起采访 Gerard Braad,一位当前身处帝都、活跃在各个国际开源社区的荷兰老兄,这位老兄有一个中文名字,叫做吉拉德(他的微博和微信都是 @gbraad)。

吉拉德老兄的背景很丰富:1994 年开始活跃在 Linux 社区,在荷兰国防部给坦克做过程序,做过移动方面的项目,是 Fedora 项目和 Mozilla 项目在中国的社区代表,所有新潮的项目——无论是底层、后端还是前端——都在自己的电脑上安装体验过,是典型的不折腾会死星人。昨天聊的话题也很多,从老兄自己的背景,聊到 container,聊到 CoreOS,聊到 Pets and Cattle 理论,聊到 OpenShift,聊到 BaaS,聊到分布式部署系统,又聊到前端……我相信如果没有外在的时间限制,吉拉德老兄可以滔滔不绝的连讲三天三夜。他的口头禅是:

“Every technology has a place, as long as you understand when and when not to use it. There is no silver bullet!”(每一种技术都有它的位置,你需要做的是了解何时该用它,何时不该用它。这世界上没有银弹!)

吉拉德老兄有一点很特别,就是他对技术起源的理解很深,无论跟他聊到什么外界认为新鲜的话题,他不仅知道这项新技术是什么人做的,这些人是基于怎样的背景做的,而且还能找到历史上与之类似的项目进行类比。比如 Container,最近几年因为在云计算平台上被应用的越来越多,很多人觉得这又是一个富有潜力的新技术,“可能会取代 VM”云云;但只要仔细了解,就会知道几十年前 Solaris 的 Zones 和 FreeBSD 的 jails 都是 container 技术的实现。不仅如此,在吉拉德同学看来,浏览器里的沙箱从资源隔离的角度,Java 的 J2EE container 从标准抽象化的角度,其实跟 container 的概念是一致的。无论是 OpenVZ 也好还是 LXC(cgroups)也好,无非是 container 概念的成熟或不成熟的不同实现方式。

而归根结底,container 这个概念的两个含义,隔离与标准化,在很多领域都被广泛采用;container 一词意为容器,也特指用于渡轮运输的集装箱。比如用渡轮运汽车,就算甲板上铺满了汽车,也只能装几百辆;但如果用集装箱,因为可以摞起来运输,不仅可以多装很多汽车,装卡车、公交车或者玩具都没问题,因为集装箱里可以放容量允许范围内的任何东西。

聊到后来,吉拉德老兄就感慨到,说现在的年轻人啊,看到一点自己没见过的新鲜东西就过度兴奋,觉得发现了什么新大陆,其实前人老早就发现过了。现在计算机世界里正在进行的工作,在过去几十年中都曾经以不同的形式被发现过。好比之前敏捷开始火的时候,很多人都说,“我们发现了新的方法论!”但人家敏捷的元老 Martin Fowler 自己都说,这其实压根儿不是什么新东西,迭代的思想 n 年前就有啦。

我说,那是因为他们对历史了解的太少。

仔细想想,顶尖的黑客,往往也通晓技术发展史。《浪潮之巅》就是一本比较典型的技术史入门读物,另外很多公司创始人的传记、技术大牛的访谈等,都是不同程度的历史资料。现在在国内技术界比较有影响力的一些技术博主,如阮一峰、Fenng、道哥的黑板报等,在寻根溯源的能力和历史知识的积累方面,都有自己的特点。

因为了解历史,所以知道自己的定位,公司的定位,行业的定位,未来几年的变化趋势,以及自己该往何处走。

对于其他领域,也是一样的。比如最近在看的一本《那些滚雪球的人》,讲投资人的事情,也有类讲到历史的重要性。下面引用归江在采访中回复的一段话作为今天的结尾,希望大家喜欢:)

所有的价值投资者都在买白酒,台湾地区的白酒经销商告诉我们,在经济最疯狂的时候,台湾地区曾经消费了全世界 80% 的路易十六,而现在中国内地可能消费了全世界 150%(还有很多假酒)的路易十六,这个规律是不是很接近?如果只看当下贵州茅台的业绩,很难指导你的方向。

所以这种对经济周期的理解、对企业史的理解是我们努力的方向。大多数优秀的长线投资者往往是学历史出身,或者像查理·芒格一样将一生中大量的精力投入于人类行为和历史的研究。只有拥有足够长远的视野,特别在新兴经济体中,大家都看着当下,你能看得更长远,未来的赢面可能就更大。

本日作者简介

杨赛(@lazycai),InfoQ 中文站编辑。到处串门的互联网信徒,相信规则的力量。

架构