肯·汤普森,图源:维基百科

UNIX 之父、图灵奖得主、C 语言的前身 B 语言的开发者、操作系统 Plan 9 的主要作者、Belle(一个国际象棋程序)作者之一,这些成就都出自一人之手,编程史上从来不缺大人物,但是肯·汤普逊(一般称之为 Ken Thompson,肯·汤普森)绝对是一个传奇。

在《编程人生》一书的访谈中,肯·汤普森曾回忆:“小学时受到的教育很烂,但唯独一堂课讲了二进制,从此我便被迷住,因为从小就喜欢逻辑,因此做了很多二进制的运算,甚至还借助一台十进制计算器扩展到各种进制。”

汤普森 1943 年出生在美国新奥尔良。1960 年,就读于加州大学伯克利分校主修电气工程,并取得电子工程硕士学位。当时,他的论文导师是埃尔温·伯利坎普,同样也是一位传奇人物。

埃尔温·伯利坎普的博士导师是香农、Gallager 等大师,他发明了 Berlekamp 、Welch-Berlekamp 和 Berlekamp-Massey 等著名算法,还花了不少时间研究围棋等博弈游戏,他是组合博弈论的创始人之一。

埃尔温·伯利坎普,图源:维基百科

1966 年,毕业后的汤普森被贝尔实验室聘用。他跟丹尼斯·里奇(C语言创始人)在 Multics 操作系统上工作。那时候,计算机还处在批处理的阶段,技术不够发达,程序员的工作效率不高,他们只能在既慢又笨重的大型机器上工作。为了解决一系列问题,Multics 操作系统应运而生,它是由美国高级研究计划局资助、由麻省理工学院、贝尔实验室和通用电气公司的研究人员共同开发的分时操作系统。

可是好景不长,因为开发周期过长、成本过高,1969 年贝尔实验室决定撤出这个项目。令汤普森最不开心的是他曾为 Multics 写过一个游戏《太空旅行》,这下也玩不了了。

为了继续玩游戏,汤普森找到了一台旧的 PDP-7 计算机,他重新编写了这个游戏,还花了一个月的时间开发了全新的操作系统 UNiplexed Information and Computing System(UNICS),后来改称为 UNIX。

UNIX 首次运行在 DEC PDP-7 上,图源:维基百科

在 UNIX 的开发过程中,汤普森决定 UNIX 需要一种系统编程语言。于是他开发了 B 语言,也就是 C 语言的前身。B 语言在进行系统编程时不够强大,所以 1973 年丹尼斯·里奇用 C 语言重写了 UNIX,安装在 PDP-11 计算机上。随着后来 UNIX 的广泛使用,C 语言也成为了当时最受欢迎的编程语言延续至今。

坐着的肯·汤普森与丹尼斯·里奇一起在 PDP-11 旁工作,图源:维基百科

1980 年,汤普森与贝尔实验室的另一位工程师约瑟夫·康登开发了一款硬件辅助程序 Belle,一个会下国际象棋的计算机。同年,汤普森当选为美国国家科学院和美国国家工程院院士。

1990年代带有液晶显示屏的压感国际象棋计算机,图源:维基百科

1983 年,汤普森被贝尔实验室任命为研究员。他还协助丹尼斯·里奇在贝尔实验室创建了 Plan 9 和 Inferno 操作系统。这一年,美国计算机协会将图灵奖授予肯·汤普森和丹尼斯·里奇。

肯·汤普森与丹尼斯·里奇(右),图源:维基百科

2000 年底,汤普森从贝尔实验室退休了,他成为了一名飞行员。在编程的世界里遨游半生,也想去真正的天空看看了。

如果你以为他的传奇生涯就这么结束了,那就太天真了。

2006 年,他又加入了 Google 公司,参与设计 Go 语言。当提到他与其他 Go 语言的原始作者时,他说:“当我们三个人(Thompson,Rob Pike 和 Robert Griesemer )准备开始开发 Go 的时候,纯粹是为了研究。我们一起讨厌 C ++。(笑声)回到 Go,我们开始的想法是,对于语言的每个功能都要碰头交流,因此不管什么原因,我们都不会在语言中添加多余的垃圾。”

罗伯特·格瑞史莫,罗勃·派克和肯·汤普森,图源:Google

他认为优秀开发人员的标志是热情,虽然他是编程狂魔,但是他却不建议自己的儿子去读计算机,理由竟然是计算机发展太慢了。大佬果然是大佬。现在已经 77 岁的汤普森依然在编程路上不断探索,我们又怎么能停下脚步呢?

今天是 2 月 4 日,是肯·汤普森的生日,在这里我们要祝愿大佬生日快乐。同样,今天也是立春的日子,一年的初始,也希望小伙伴们能保持初心,迎接新一年的工作和学习。

图书推荐:

从零开始编写一个五脏俱全的图形操作系统 

《30天自制操作系统》

作者:川合秀实

译者:周自恒,李黎明 等

这是一本兼具趣味性、实用性与学习性的书籍。作者从计算机的构造、汇编语言、C 语言开始解说,让你在实践中掌握算法。在这本书的指导下,从零编写所有代码,30 天后就可以制作出一个具有窗口系统的 32 位多任务操作系统。

Linux命令行圣经

《Linux命令行与shell脚本编程大全》

作者:Richard Blum等

译者:门佳,武海峰

和所有“大全”系列图书一样,这本书涵盖了详尽的动手教程和实践信息,还提供了与所学内容相关的参考信息和背景资料。它是关于 Linux 命令行和 shell 命令的相当全面的资源。读完之后,你将可以轻松写出自己的 shell 脚本来实现 Linux 系统任务自动化处理。

101个shell经典实例,拿来即用

《shell脚本实战(第2版)》

作者:戴夫•泰勒,布兰登•佩里
译者:门佳

本书极为实用,通过对 101 个 shell 脚本实例及其核心内容的讲解,展示如何在实际工作中利用 shell 脚本解决各种常见问题。涉及的主要内容有:简化 shell 脚本的工具和技巧,用户命令改进,UNIX 调校,用户管理,系统维护,网络资源处理,网站管理,Internet 服务器管理,OS X 脚本,云服务相关脚本,图像处理。

豆瓣评分9.1

比教材更易懂的C语言入门书

《明解C语言:入门篇》

作者:柴田望洋

译者:管杰,罗勇,杜晓静

本书对 C 语言的基础知识进行了彻底剖析,内容涉及数组、函数、指针、文件操作等。对于 C 语言语法以及一些难以理解的概念,均以精心绘制的示意图,清晰、通俗地进行讲解。原著在日本广受欢迎,始终位于网上书店 C 语言著作排行榜首位。

豆瓣评分9.3

无数程序员推荐的C语言力作

《C语言程序设计现代方法》

作者:K.N.King  

译者:吕秀锋 黄倩

本书最大特色是通过一种“现代方法”来介绍 C 语言,书中强调标准 C,强调软件工程,不再强调“手工优化”。这一版中紧密结合了 C99 标准,并与 C89 标准进行对照,补充了 C99 中的最新特性。本书分为 C 语言的基础特性、 C 语言的高级特性、 C 语言标准库和参考资料 4 个部分。每章末尾都有一个“问与答”小节给出一系列与该章内容相关的问题及答案。

文末畅聊

在家办公的你,效率如何呢?可以留言跟大家说说最近的生活。也可以跟大家分享下最近在读的书。特殊时期,希望大家能少去人多的地方,勤洗手、多锻炼、爱读书。精选留言选出 5 位获得 50 元电子书优惠券一张。留言截至 2020.2.7。

推荐阅读:

2020年图灵教育重磅新书预告,本本都让人无法割舍

未发售已销 1000 本,这本反爬虫专题书火爆编程圈

你大爷还是你大爷,C语言成为2019年度编程语言

飞行员指南

26岁创造UNIX,退休后却成为一名飞行员,这位编程界大佬不走寻常路相关推荐

  1. 26 岁创造 UNIX,退休后却成为一名飞行员

    肯·汤普森,图源:维基百科 UNIX 之父.图灵奖得主.C 语言的前身 B 语言的开发者.操作系统 Plan 9 的主要作者.Belle(一个国际象棋程序)作者之一,这些成就都出自一人之手,编程史上从 ...

  2. 26岁创造UNIX的编程大佬,退休后却成为一名飞行员

    UNIX 之父.图灵奖得主.C 语言的前身 B 语言的开发者.操作系统 Plan 9 的主要作者.Belle(一个国际象棋程序)作者之一,这些成就都出自一人之手,编程史上从来不缺大人物,但是肯·汤普逊 ...

  3. 26岁,大学肄业,家里蹲5年,这位失业青年的求救,牵动百万网友的心……

    近期,知乎上有一个求救贴火了,浏览量一度飙升到480多万,近千名网友在帖子下留言,纷纷表达自己的看法. 帖子是这样的.题主26岁,大学肄业.最长只上过12天的班,每次出门面试找工作就会非常害怕,在一个 ...

  4. 他是世界上最杰出的程序员,一个月写了个操作系统,退休后去做飞行员!

    作者 | Mr.K 来源 | 技术领导力(ID:jishulingdaoli) 1983 年,美国计算机协会将图灵奖授予肯·汤普森和与丹尼斯·里奇. 获奖理由是:"For their dev ...

  5. 马云退休当老师:盘点IT大佬们退休后的现状

    9月10日,马云宣布自己将在一年后辞去阿里巴巴董事局主席,退休当老师.早在2013年,马云已卸任阿里巴巴的CEO. 与"一干一辈子"的传统行业大佬不同的是,互联网大佬的退休年龄普遍 ...

  6. 22岁天才少女加入华为,曾获编程界的奥林匹克世界冠军

    整理 | 王晓曼 转自 | 程序人生(ID:coder _life) 1月11日,据华为心声社区报道,曾获得"编程界的奥林匹克"--国际大学生程序设计竞赛(简称ICPC)世界冠军奖 ...

  7. 组建实验室仅3年,团队人均26岁,这位85后女博导成果登上Nature!

    回国组建实验室仅三年多,她带领一支平均年龄只有26岁的年轻科研团队在植物免疫学领域取得重要进展. >>>> 日前,这位85后上海女科学家.中国科学院分子植物科学卓越创新中心研究 ...

  8. 清华90后博士后26岁已在《科学》发文6篇

    图为万蕊雪工作照 核心阅读 : 做科研就像跑马拉松,不仅要有耐心,更要有热情,跑到最后,对手其实是自己 现在的本土科研人才对科研成果有底气,对科研前景有信心 短发.清瘦,粉色羽绒服.双肩背包--走在清 ...

  9. 组建实验室仅3年,团队人均26岁!这位85后女博导成果登上Nature!

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 回国组建实验室仅三年多,她带领一支平均年龄只有26岁的年轻科研团队在植物免疫学领域取得重要进展. 日前,这位 ...

最新文章

  1. PostgreSQL在何处处理 sql查询之四十六
  2. sklearn机器学习常用数据处理总结
  3. elasticsearch文档-modules
  4. STM32中断优先级的管理(NVIC)
  5. triplet loss后面不收敛_你的神经网络真的收敛了么?
  6. 铺铜过孔不要十字_谈谈商周青铜器上圈足的镂孔现象
  7. 基于android的交流平台,基于Android的移动学习交流平台的设计与实现
  8. python布尔类型运算_python布尔运算记录
  9. Ext Scheduler(日程表) 2.0——升级到4.0
  10. Docker 的使用
  11. 【原创】Bug管理操作规范个人经验总结
  12. Win10驱动签名总结
  13. 烽火HG680-KB及其他5款Hi3798MV310芯片盒子刷机固件及教程(当贝桌面)
  14. 最常用的数据分析方法
  15. Windows Server 2008 R2 安装及配置
  16. 军犬舆情热点:千亿矿权案成立联合调查组;格力人均加薪1000元
  17. 网络技巧|远程桌面连接不上的多种解决方案!
  18. android 主流框架与技术
  19. 背景图全屏水平垂直居中的方法
  20. jQuery添加、删除元素

热门文章

  1. python制作神经网络_python_deeplearning02_使用python制作神经网络
  2. python把文字矢量化_这个python函数可以被矢量化吗?
  3. 【c语言|Python】求一元二次方程ax^2+bx+c=0的根
  4. 鸿蒙系统方舟运行时,方舟编译器立功!第三方App已经落地,距离鸿蒙系统还会远吗?...
  5. linux自学笔记——RAID级别特性以及软RAID的实现
  6. 亿级PV超大型网站集群架构图形深度揭秘讲解
  7. 细说Android事件传递
  8. android 在 ListView 的 item 中插入 GridView 仿微信朋友圈图片显示。
  9. Java 内部类分析
  10. js基础--javascript基础概念之String 类型