保持简单----纪念丹尼斯?里奇(Dennis Ritchie)

更多精彩文章点击后瞬间呈现。

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语言依然是世界上最重要的编程语言之一,"保持简单"原则显示了强大的生命力。

发明Unix和C语言,给丹尼斯•里奇带来巨大的荣誉,他得到了1983年的图灵奖、1990年的汉明奖、1999年的美国国家技术奖章。尽管功成名就,但是就像他的工程设计思想,丹尼斯•里奇在个人生活上也尽量"保持简单"。他依然住在新泽西,低调地生活,不太在媒体上曝光,终身没有结婚。

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

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

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

时间: 2024-11-05 22:32:47

保持简单----纪念丹尼斯?里奇(Dennis Ritchie)的相关文章

C语言之父丹尼斯-里奇辞世 引发全球“;”悼念

在众多的国际互动论坛上,计算机爱好者们以特有的方式纪念这位编程语言的重要奠基人.许多网友的发帖中没有片言只字,仅仅留下一个分号“;”.在C语言中,分号标志着一行指令语句的结束,网友们以此来悼念“C语言之父”,美国著名计算机专家丹尼斯·里奇(Dennis Ritchie)所引领的时代悄然远去. 在日益纷繁复杂的程序设计语言王国中,C语言因其简洁.有效.通用的特性而始终占据一席之地.被誉为“C语言之父”,同时也是操作系统Unix之父的C语言发明人之一丹尼斯·里奇10月9日以70岁之龄辞世. 生于19

丹尼斯里奇

C语言之父,Unix之父丹尼斯里奇. 这是一个伟大但不为大多数人所知的人,甚至很多IT界的人都不知道这么个人. 他的C语言影响之深自不必说,Unix哲学也影响后续一系列操作系统的设计. 和乔布斯同年去世,但是他的去世却无人知道,还是他的同事拜访他时才发现他已经去世了,才向世人公布了他去世的消息.

Interview with Dennis Ritchie (2003)

转自:  https://anders.unix.se/2015/10/26/interview-with-dennis-ritchie-2003/ Interview with Dennis Ritchie (2003) In 2003 I was running a website called Unix.se. One day I figured, why not ask Dennis Ritchie for an interview? I fired off an email to [e

B语言的发明者 Ken Thomson & C语言的发明者Dennis Ritchie

C语言的发明者Ken Thomson因为没有参加C语言考试,在Google没有提交代码的权力. 哀悼结束,生活还要继续. 说段趣闻吧.大家都知道,C语言和Unix的发明者.图灵奖得主.最具传奇性的程序员Ken Thompson加盟Google之后,与一帮高手一起捣鼓出了又一惊天之作:并发时代的系统编程语言Go.Go一经面世就闯入了编程语言排行榜前20,创造了奇迹. 可是,Gawker网站今天爆料,他在Google居然没有提交代码的权力!原因呢,只不过是按公司规定,所有程序员必须通过编程语言考试,

不忘初心 --- 重读<<The C Programming Language>>

这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝.那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者:C语言的发明人.通过网上的纪念文章<<Unix传奇>>才真正了解到大师的伟大之处.那年我参加工作刚好1年,所使用的语言是c#(从大二开始学习,也没想到伴随我到现在).抱着纪念大师的想法也顺便重温下C语言,我在书店买了一本原版的<<The C Programming Language>>.没想到这本书"读了

文学博客

C语言是目前世界上流行.使用最广泛的高级程序设计语言.         C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的. C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言. 常用的编译软件有Microsoft Visual C ,Borland C ,Watcom C ,Borland C , Borland C Builder,Borland

构造可配置词法语法分析器生成器(下)

本文为笔者原创,转载请注明出处 http://blog.csdn.net/xinghongduo mylex & xparser mylex & xparser是笔者实现的类似于Lex和Yacc的词法语法分析器生成器,它接受正则表达式定义的词法规则和BNF定义的语法规则,自动构造对应的以C为宿主语言的词法分析器源程序mylex.h, mylex.c和语法分析器源程序xparser.h, xparser.c. mylex & xparser特点如下: 轻量无依赖:构造器的主要代码仅2

C基础入门 - 第一章 - C语言绪言

第1章 C语言绪言 1.1 C语言概述 1.1.1 C语言世界 1.1.2 C语言学习, 能当饭吃吗 1.2 开发环境构建 1.2.1 visual studio安装使用 1.2.2 visual studio无脑调试 1.3 请记住 hello world 1.3.1 注释详解 1.3.2 也许这一章是最难的 1.4 扩展阅读 - visual studio编译流程 ----------------------------------------------------------------

Java之父评价C语言之父:我用尽了形容词 【转】

I've   run   out   of   adjectives! Java 之父詹姆斯·高斯林(James Gosling)在上周发布了关于讨论C语言之父丹尼斯·里奇(Dennis Ritchie)的简短博文(I've run out of adjectives),伯乐在线编译如下: 丹尼斯·里奇辞世的新闻如五雷轰顶.过去几天已经有很多资讯报道此事.他的影响巨大,并超越了科技世界,虽然他的大多影响都不为人知,但完全可以感受到.C语言撑起了一切.我的整个职业生涯也是从C语言和 Unix 中发