查看原文
其他

他是从贝尔实验室走出的巨人,乔布斯脚下的巨人肩膀

2018-02-25 德先生

本文来源:财经综合报道



当我们在缅怀乔帮主的时候,却很少有人知道,有个傻傻的老头也是在那个10月逝世,和乔帮主离开的时间只相差了几天,然而他在互联网领域的成就,甩了乔帮主好几条街。



丹尼斯·里奇(Dennis Ritchie),所有的IT Geek都应该知道的人物。丹尼斯·里奇是Unix和 C 语言的发明人,图灵奖获得者,丹尼斯·里奇先生,于2011年10月在位于美国新泽西州的家中病逝。可以说,几乎所有的网络产品都是基于丹尼斯先生的成就诞生的。


苹果,微软,以及其他,都是站在里奇的肩膀上…


里奇在哈佛大学学习物理学和应用数学毕业,1967年他进入贝尔实验室,是朗讯技术公司系统软件研究部门的领导人。丹尼斯•里奇和肯•汤普逊在贝尔实验室的计算科学研究中心里开发出了UNIX这个大名鼎鼎的操作系统,还因为开发UNIX而衍生出了一门同样赫赫有名的编程语言,C语言。对于很大一部分人而言,UNIX就是操作系统的鼻祖,C语言也是计算机课程中最广泛使用的编程语言。UNIX和C语言在过去的几十年以来已经造就了无数的成功商业故事,90年代如日中天的太阳微系统(Sun MicroSystems),苹果帝国的所有产品操作系统,如果你用的不是苹果,安卓系统也是。


1983年他与肯·汤普逊一起获得了图灵奖。理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。1999年两人为发展C语言和Unix操作系统一起获得了美国国家技术奖章。在技术讨论中,他常被称为dmr,这是他在贝尔实验室的Email地址。


01

保持简单和直接





1954年,电气工程师阿利斯泰尔•里奇(Alistair E. Ritchie),决定举家从纽约州的布朗克斯维尔(Bronxville),搬到几十公里以外的新泽西。这样可以离他的工作单位"贝尔实验室"更近一些。


13岁的丹尼斯•里奇(Dennis Ritchie),就这样随着父亲一起来到新泽西。那时,谁也没有想到,这个文静的少年将在这里待上一辈子,并且创造出改变世界的发明。


中学毕业后,丹尼斯•里奇听从父亲的建议,进入哈佛大学学习应用数学,直到拿到博士学位。他的第一份工作,是为军方研制核武器,这并不符合他的志趣。1967年,通过父亲介绍,26岁的他进入贝尔实验室,从事刚刚兴起的计算机研究。从此,他在新泽西老家一住就是44年,直到去世。


他在贝尔实验室的第一个任务,是参与大项目Multics,即开发一个前所未有的、可以多人使用的、同时运行多个程序的操作系统。该项目由贝尔实验室、麻省理工学院和通用电气公司三方联合研制,但是由于设计过于复杂,迟迟拿不出成果,1969年贝尔实验室宣布退出。


第一个任务这样无果而终,丹尼斯•里奇很不甘,但也无能为力。谁知过完了夏天,比他小两岁的同事肯•汤普森(Ken Thompson)找上门,说借鉴Multics的设计思路,做了一个个人项目Unix,问他有没有兴趣一起参与。丹尼斯•里奇立刻表示同意,于是两人一起投入Unix的开发。肯•汤普森的专业是电子工程,丹尼斯•里奇专业是应用数学,正好互补。经过日以继夜的工作,1969年圣诞节前,Unix已经可以初步运行了。



吸取了Multics设计复杂而导致失败的教训,丹尼斯•里奇将Unix的设计原则定为"保持简单和直接"(Keep it simple stupid),也就是后来著名的KISS原则。为了做到这一点,Unix由许多小程序组成,每个小程序只能完成一个功能,任何复杂的操作都必须分解成一些基本步骤,由这些小程序逐一完成,再组合起来得到最终结果。


表面上看,这样的设计很低效:为了取得结果,你必须运行一连串小程序,那么为什么不用一个大程序一次运行就得到结果呢?但是事实证明,由于小程序之间可以像积木一样自由组合,所以非常灵活,能够轻易完成大量意想不到的任务。而且,计算机硬件的升级速度非常快,所以性能也不是一个问题。另一方面,开发单一目的的小程序,要比开发大型程序容易得多,所以Unix才有可能在短短几个月内问世。


Unix迅速在程序员中流传,到了80年代,已经成为主流操作系统,演变成整个软件工业的基础,当代最主要的操作系统----Windows、MacOS和Linux----都与Unix有关。由此可见,丹尼斯•里奇的"保持简单"原则,对计算机时代的影响有多大。


丹尼斯•里奇对世界的贡献还不止于此。Unix最早是用不通用的机器语言编写的,如果换一个型号的计算机,就必须重新编写一遍。为了提高通用性和开发效率,丹尼斯•里奇决定发明一种新的计算机语言----C语言。


C语言也贯彻了"保持简单"的原则,语法非常简洁,对使用者的限制很少。丹尼斯•里奇编写的教材《C编程语言》总共只有100多页,薄得难以置信。很多人都被它的简洁性吸引,学习并使用C语言。直到今天,C语言依然是世界上最重要的编程语言之一,"保持简单"原则显示了强大的生命力。


02

简单生活




Keep it simple stupid


尽管功成名就,但是就像他的工程设计思想,丹尼斯•里奇在个人生活上也尽量"保持简单"。他依然住在新泽西,低调地生活,不太在媒体上曝光,终身没有结婚。


他也始终没有跳槽,一直在贝尔实验室工作,尽管后者多次分拆,到了最后已经名存实亡。2001年,接手贝尔实验室的朗讯公司,决定关闭大多数实验室,许多研究人员纷纷离开,包括Unix发明者之一的肯•汤普森都去了Google,但是丹尼斯•里奇哪里也没去,还是留了下来。2006年12月1日,贝尔实验室被整体卖给了法国阿尔卡特公司,第二年他就选择退休了。


退休以后,他过上了隐居生活,外界几乎忘了他的存在。2011年10月12日,共事20年的同事Rob Pike从加州到新泽西去拜访他,才发现他已经去世了。由于是独居,无法知道准确的死亡时间。据他的兄弟透露,这几年丹尼斯•里奇的健康状况一直不好,他患有前列腺癌和心脏病。


Rob Pike在Google Plus发了一条简短的消息,"据我所知,Unix和C语言发明人丹尼斯•里奇已经去世",外界才知道这件事,引发了纪念浪潮。虽然这个过程有点令人伤感,但是必须说,这很符合他的"保持简单"的原则。



03

提供肩膀的巨人




罗伯是里奇的同事,二人在贝尔实验室共事20年。罗伯说:


当乔布斯去世时,享受到了声势浩大的追思。相形之下,里奇先生对当代科技进程做出了更大的贡献,可公众甚至不知道他是谁,这十分不公平。


网络已经成为当代生活不可或缺的一部分。然而,缺少了里奇所创造的 C 语言和 UNIX ,网络和任何网络产品都不可能存在。比如,浏览器是用 C 语言写的,网络服务器是C语言写的,很多人反驳说他们所使用的是 JAVA 或者 C++,但它们也是 C 语言的衍生物。包括网页架构时的 Python 和 Ruby 两种程序语言,也是基于 C 语言的。除此而外,所有的网络硬件产品都是 C 语言所编写的,而 UNIX 是整个因特网所运行的基础。由此可见,我们怎样评价里奇先生的丰功伟绩,都不足为过。甚至Windows 也曾经用C 语言写过,苹果公司用于个人电脑、iPad和iPhone上的操作系统,都是基于UNIX的。


麻省理工大学计算机系的马丁教授评价说:


如果说,乔布斯是可视化产品中的国王,那么里奇就是不可见王国中的君主。乔布斯的贡献在于,他如此了解用户的需求和渴求,以至于创造出了让当代人乐不思蜀的科技产品。然而,却是里奇先生为这些产品提供了最核心的部件,人们看不到这些部件,却每天都在使用着。


里奇是一个非常低调地科研工作者。和乔布斯力图形成垄断的个人主义截然不同,里奇一直希望自己的工作能够为更多的科研工作者所用,能够为他人日后的科研工作和科技进展提供便利。

 

克尼汉评价道:


牛顿说他是站在巨人的肩膀上,如今,我们都站在里奇的肩膀上。


这句话,应该是对丹尼斯·里奇先生的一生最有力也是最中肯的评价。



📚往期文章推荐

人工智能名人堂第49期 | 斯坦福研究院名人堂成员:Peter E. Ha

🔗他是中国第一个汽车院士,他的学术生涯从“红旗”开始,穷尽一生只为汽车

🔗一边睡觉一边讨论学术的双料院士:将突发性睡病化为成就之源的乔治·丘奇

🔗华人银行被美国政府当替罪羊,这位老华侨花1000万美元誓死反击

🔗中国在国际顶级学术期刊上发表文章的第一人,一生挽救了无数国人的性命

🔗他用一生撑起了12000篇论文:科学史上最著名的失忆者

🔗盘点 | 做实验不要命的科学家,这十位啥都敢往自己身上怼

🔗2018一起拥抱AI丨潘云鹤院士:中国新一代人工智能(PPT图文实录)

🔗他是“90后”青千,25个SCI期刊的审稿人,最大的爱好是科研!

🔗在“山寨”诺奖上扫地20年,他扫来了货真价实的诺贝尔物理学奖

🔗数学家张益唐妹妹首次感人披露其家庭:清歌如烟,我的哥哥我的家


德先生公众号 | 往期精选


在公众号会话位置回复以下关键词,查看德先生往期文章!


人工智能|机器崛起|区块链|名人堂

虚拟现实|无人驾驶|智能制造|无人机

科研创新|网络安全|数据时代|人机大战

……

更多精彩文章正在赶来,敬请期待!


点击“阅读原文”,移步求知书店,可查阅选购德先生推荐书籍。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存