他是现代计算机科学的鼻祖,编程界的上帝

简介:

他是历史上最年轻的图灵奖获得者

经典巨著《计算机程序设计的艺术》的作者

写作排版神器TEX软件的创造者

现代计算机科学的鼻祖

他就是计算机领域的艺术大师——

唐纳德·克努特


他在8岁的时候

为了帮自己班级

在一个拼写单词活动夺得冠军

装病待家里两周背单词

最后比赛时写出了4500多个单词

比裁判所准备的还要多出2000个

然后他笑着说:我还能写出更多~

从此他在班里的人气就一直居高不下


其实他高一的时候

更喜欢听音乐与作曲

甚至还一度考虑过报考音乐专业

真正使得他和计算机结缘

则是在他大一暑假留校打工的时候

当时他工作的隔壁房(学校的机房)

放了一台IBM650计算机

他在学校机房里研究了好几天

大二结束后他选了数学专业

后来还设计了一个数学模型

根据球员在每场比赛中的多项表现的统计数据

对球员进行综合评估

(评估计算则通过程序交给了计算机)

球队教练根据他的程序挑选和使用球员

最后让学院赢得了联赛冠军

他还曾在《美国数学月刊》

发表一篇名为卫生纸问题 的论文

研究如何合理使用厕纸的算法

小节标题中使用了大量的粪便学词汇

编辑警告他过度调侃的文风是危险的

唐稍微替换了几个小标题的粪词

表示不想改也无需再改了

编辑无奈之下只好表示:

你的厕纸被接受了!

1964年,他被约稿创作一本

关于编译器和程序设计方面的书

结果拖了4年都还没有动静

编辑终于忍不住问他书写咋样了

他回答:才只写了3000页

都还没进入主题

编辑拉长了下巴,目呆口滞

也只能帮他出多卷本了

于是就有了

《计算机程序设计艺术》系列丛书

这一套书是编程史上最伟大的书之一


第一卷的书名叫做《基本算法》

讲述编程时要用到的基本数学知识

和处理不同问题要用到的算法

后来第二卷、第三卷也相继出版

1973年系列丛书销量已经突破百万

这套包罗万象的计算机丛书

受到了图灵奖评委会的关注

按照唐纳德的计划

该系列丛书一共有7卷

这才出到第3本

图灵奖的评委们已经忍不住

把奖杯送给他了...

从此他家就多了一个水果盘......

那年,他只有36岁

他也成为了图灵奖至今年龄最小的获奖者


图:碗状的图灵奖杯


本来他应该继续写系列丛书的

但作为一个完美主义强迫症

他实在无法忍受如此低劣的排版技术

居然把他的艺术品印的这么难看

他在采访中说:

我忍了很久了,当今的文字排版技术太烂了,破坏了我著作的美感,我要去开发更先进的排版技术,更优美的字体,让我的书看起来更漂亮!

笔耕一辍就是十年

在这十年之间

唐纳德发布了三个响亮的成果:

METAFONT字体设计系统、

文学化编程(Literate Programming)、

以及著名的TEX排版系统

如果大家用word写过复杂的数学公式

或者在公众号排版放过几个公式

都会知道放出来预览一看

那种传统排版所带来的咬牙切齿的感觉

编辑时还可能会有什么行间距段前距段后距

字体字号字距粗细等细节问题

影响美观

而TEX系统则完全解决了这些问题

简直是强迫者自我满足的终极神器

它大大加快了学术论文的编写速度

直至如今TEX还是全球学术排版的不二之选


TEX的版本号不是自然数列

而是从3开始

不断地逼近圆周率

目前最新版本是3.1415926

意思就是在说

我的系统已经无限接近于完美了

没有什么要改的地方了...

此外他还为TEX系统设立了奖金

第一个发现系统漏洞的人

可获得2.56美金

第二个人可获得5.12美金

依此类推

……

从版本推算,现在送出的支票

已经去到了327.68美金

但收到支票的人都几乎没去银行兑换

只是把支票当做自己的纪念收藏品

凭借他的这些成果

他获得了美国总统卡特亲自颁发的

美国国家科学奖奖章


有了漂亮的排版和优美的字体

高德纳重启了系列丛书的写作

但由于计算机领域发展迅速

至今只写到第四卷第一部分(4A)


这套丛书如今早已成为

程序员界的圣经

唐纳德也因此成为了编程界的上帝


唐纳德:我尝试尽我所能的去熟悉电脑科学里的一些领域,然后把这些知识摘要成大家比较容易了解的方式,让没有那么多时间做这种学习的人也能够吸收它们。


唐纳德认为编程是一门艺术而不是一门科学

因为艺术是人创造的,科学不是。

艺术是可以无止境提高的,而科学不行。


按照这个逻辑

全世界的各位码农

其实都是殷勤的艺术家

 原文发布时间为:2016-09-25

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
14天前
|
人工智能 搜索推荐 算法
编程之舞:从代码到艺术的蜕变
【10月更文挑战第30天】在数字世界的无限舞台上,编程不仅仅是冰冷的逻辑和枯燥的算法。它是创造者手中的画笔,是构建梦想的乐章。本文将带你领略编程背后蕴含的艺术之美,探索如何通过代码示例将技术与创造力结合,从而让程序设计成为一种独特的艺术表达。
27 2
|
3月前
|
算法
代码的诗意:从技术感悟到生活哲学
【8月更文挑战第30天】在数字世界的编织中,每一行代码都是诗行的缩影,承载着逻辑与情感的双重奏。本文将带领读者穿梭于技术的细节与生活的广阔之间,探索编程之美如何映照人生的哲理。从简单的算法到复杂的系统设计,我们将发现,代码不仅仅是冷冰冰的指令集合,它也能如诗般流淌,讲述着创造与和谐的故事。让我们一起走进代码的世界,解锁那些隐藏在键盘敲击声中的深刻启示。
|
3月前
|
算法
编程之舞:技术感悟与生活哲学的交织
【8月更文挑战第16天】在数字世界的舞台上,编程不仅是技术的展示,更是思考的艺术。它如同一场精心编排的舞蹈,每一个动作、每一次旋转都蕴含着深远的意义。本文将带领读者走进编程的内在世界,探索那些看似晦涩难懂的代码背后所隐藏的生活哲学和情感表达。通过个人的技术感悟,我们将一同见证编程如何超越语言的界限,成为一种独特的沟通方式,连接着人与人、人与机器之间的思想与灵魂。
|
5月前
|
存储 编译器 C语言
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(上)
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(上)
31 2
|
5月前
|
机器学习/深度学习 算法 搜索推荐
编程之舞:探索算法的优雅与力量
【6月更文挑战第10天】在软件的世界里,算法是构筑数字宇宙的基石。它们如同精心编排的舞蹈,每一个步骤都充满着逻辑的美感和解决问题的力量。本文将带领读者走进算法的世界,一起感受那些精妙绝伦的编程思想如何转化为解决现实问题的钥匙。
34 3
|
5月前
|
存储 编译器 C++
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(中)
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(中)
20 0
|
5月前
|
编译器 C++
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(下)
【C++航海王:追寻罗杰的编程之路】类与对象你学会了吗?(下)
24 0
|
5月前
|
存储 C语言 C++
【C++航海王:追寻罗杰的编程之路】C&C++内存管理你知道哪些?
【C++航海王:追寻罗杰的编程之路】C&C++内存管理你知道哪些?
23 0
|
缓存 Java 编译器
初入编程之门的个人建议1.0
初入编程之门的个人建议1.0
39 0
|
前端开发 JavaScript Java
编程其实是一门武林绝学,你是哪个门派?
编程其实是一门武林绝学,你是哪个门派?
133 0