岁还嗖嗖改代码的命名人他说解决问题全靠拖

深度 | 2022-08-30| 12
岁还嗖嗖改代码的命名人他说解决问题全靠拖

今天,《Linux三剑客》中的一个很老的工具突然出现在GitHub当日热榜:

——这其实是因为80岁的原作者更新了。

是的,你没听错,有人80岁了还在改代码!

这位大神是加拿大计算机科学家-Brian middot;科恩(布莱恩·克尼根)。

与比尔盖茨同名,Java之父,Python之父等。,他开创了“Hello World”范式,让每一个学习编程的学生都为之冒烟:

不管学什么语言,第一个程序就是学会输出。

printf("Hello World!");

cout lt lt“你好世界!”;

打印“Hello World!”

……

此外,他还是第一本C语言编程书籍的作者之一;他也是Unix系统的早期开发者和awk(Linux和Unix中的文本数据处理工具)的共同创造者。

如今老人已白发苍苍,仍活跃在“一线”—

今年5月,在AWK的GitHub仓库中,老人提交了一个新的pull请求,该请求为AWK添加了从未有过的Unicode支持。

对此,网友的态度是这样的:

是什么让这个大个子常年保持对编程的热情?

免费进入贝尔实验室

事情还得从科林汉姆的大学时代说起。

科恩1942年出生于加拿大,本科在多伦多大学学习工程物理。

他形容这是为那些不知道自己想学什么的人开设的“大杂烩”专业,但幸运的是,他大一就对编程产生了兴趣,并学习了Fortran。

那时,计算机的发展还处于初级阶段。他直到大三才看到学校里唯一的晶体管电脑:IBM 7094。

因为太贵了(价值300万美元),学生没有机会接触。

可见当时工具匮乏,学编程的Colin Han只是读了Daniel middot麦克拉肯的代表作获得了“丰富”的理论知识,实际上并没有写过一行代码

有一年暑假,我不知道他是怎么在石油公司实习的。任务是用COBOL语言为炼油厂开发优化软件。

由于他对这种语言不熟悉,也没有编程经验,最终没有写出一个像样的程序。

虽然遭受了一点挫折,但他对编程的热情并没有退却,他回到学校继续他的研究。

大四毕业后,科林汉姆决定继续深造,并获得了麻省理工学院和普林斯顿大学的录取通知书。

因为在麻省理工完成博士学业需要7年时间,而且他需要每周做30个小时的研究助理,而普林斯顿只需要3年,并且提供全额奖学金,而且因为他的好朋友就在普林斯顿,所以他毫不犹豫的选择了后者。

在普林斯顿大学,科林汉姆主修电子工程,因为当时没有专门的计算机系。

这丝毫没有阻止他前进的脚步。

读博期间,他先在麻省理工学院实习,并有幸被Fernando middot授予图灵奖;费尔南多·考伯特 oacute)在门下工作,为一个叫Multics的分时操作系统项目写代码。

第二年夏天,他在贝尔实验室实习,在那里他编写汇编语言。

为了方便Fortran程序中的列表处理,他还编写了一套函数库,他形容这些函数库“非常令人愉快”。

转眼博士毕业,科林汉姆直接留校当老师,没有任何面试和展示研究成果就成为贝尔实验室的正式成员,足以看出他的优秀。

他与Unix的关系由此开始。

Unix由命名

我们大部分的服务器、手机系统、物联网系统基本都是基于Unix的。

三大系统之一的Linux也是一个类Unix系统。可以说Unix是现代操作系统的源头之一。

令人惊讶的是,如此重要的操作系统的初始版本是由后来的图灵奖得主肯·汤普森(Ken Thompson)在短短三周内完成的。

Unix当时还被称为UNICS(统一信息和计算系统),后来被Colin Han改为现在的名称。

Unix中有一个核心工具,叫做AWK,科林·韩是它的发明者之一(名字中的“k”代表他)。

作为一种文本处理语言,AWK只是过滤和转换文本行,但它已经成为Unix/Linux平台上最强大的数据处理引擎之一。

在Linux系统中,它与grep、sed命令一起被称为“三剑客”,占据“老大”席位。如果掌握了,可以处理6个小时的日常操作。

时至今日,《AWK》已分为三个版本,至今仍深受人们喜爱。它在诞生45年后仍未“退休”。

除了AWK,科林汉姆还发明了AMPL,一种用于描述和解决大规模复杂数学问题的建模语言,支持世界上大多数求解器。

他还促成了编译Ratfor、文件准备预处理程序Pic、Grap和数学排版语言Eqn等重要研究成果。

除了写代码,科林汉姆热爱写书,也出过不少经典作品。

比如想了解Unix的历史,可以看《Unix传奇》。作为参与者和见证者之一,他写的这本书可以让专业技术背景不够的人领略Unix的思想。

Unix图例

文章开头提到的“Hello World”范式来自于他和C语言之父Dennis middotc编程语言,丹尼斯·里奇合著的开山之作。

比如柯林厄姆的第一本书《编程风格的要素》(《编程风格》)就留下了一个以他命名的定律——柯林厄姆定律,即:

调试一段代码的难度是编写代码的两倍。按照这个定义,如果你的代码写得很熟练,你可能没有足够的能力去调试它。

与复杂代码相比,简单代码更可取。因为在调试复杂代码的过程中,任何问题都会很难甚至无法解决。)

解决问题靠拖延?

那么,柯林厄姆本人是一种什么样的人格呢?

2021年程序员面试他的时候,问了他这个问题:

Ken在3周内创建了Unix,Doug在几天内提出了“管道”的想法。你的高效率有什么小技巧吗?

(以上两位都是他在贝尔实验室的同事)

对此,科林连连摆手:

他们是“别人的程序员”。我从来没有这么高效过!

老人说,遇到新问题,他的解决方法通常简单粗暴,就是尽量拖延,祈祷问题消失,或者祈祷问题自己解决

这种形而上学的方法本身不能解决问题,但这样做,柯林厄姆有足够的时间来消化问题,然后想出对策。

而且,他其实会选择直接解决问题。

今年1月1日,科林汉姆刚刚庆祝了他的80岁生日。

上个月油管频道Computerphile采访他,大家都知道老头还在改代码

科恩说,没有一种计算机语言或工具是万能的,AWK也不例外。

以前,AWK只适用于ASCII或8位输入,不能处理Unicode(统一码)。

图来源Youtube频道Computerphile视频

几个月前,科林汉姆花了一些时间折腾AWK他称之为“一个非常古老的程序”——现在awk可以处理UTF-8的输入和输出

现在用户可以用正则表达式提取日文字符之类的。

视频中,科林汉姆也顺口说了一句。他修补了一些“快速和肮脏”的东西,以便AWK可以处理CSV文件。

图来源Youtube频道Computerphile视频

整个采访过程中,老人依然健谈,精神面貌还不错。

说到这里,他精神抖擞。他还有什么理由要改变几十年的“老程序”?

科恩的回答是这样的:

今天的计算环境和三四十年前有很大不同,内存量大大扩展。“这将改变你对AWK的看法,尤其是AWK不能参选的部分”。

于是,老头一直在后台偷偷玩新版的AWK,目的是尽可能的扩大,让AWK更容易练习和使用

其实这是柯林厄姆一贯的行为准则。在此之前,他在播客中说:

如果你做了一些能帮助自己和改善他人工作的事情,为什么不呢?

有趣的是,世界上没有万能的工具或通才。老人自己也承认自己的bug是,没有完全理解如何使用Git

所以他只能通过电子邮件将更改发送给当前的维护人员。

塔克林厄姆的邮件

网友:黑客永不退休

80岁了,还得修改几十年前写的代码。这位程序员标王的故事再次引起了网友的关注。

AWK自出现以来一直很受欢迎。看到AWK在今天依然可以被改善,变得更强大,很多人都很尊重这位老人挖掘代码的热情。

有网友对老人表示感谢。

也有人认为,不断努力改善程序员写代码的环境,是一件非常令人鼓舞的事情。

当然,玩梗的人是少不了的。

黑客永不退休!

还有一点

最后,让我们回到“你好,世界”。

事实上,这句“万物之始”最早出现在1974年科林汉姆写的《C语言编程:教程》中,后来被纳入那部经典。

两位作者在本书中形成的写作风格也被称为 k R风格 (k R指克尼根和里奇)。

有趣的是,科林汉姆说他强迫丹尼斯写这本书。

至于为什么选择用“你好,世界”而不是别的什么,科林汉姆自己也记不清了。

在接受《福布斯》杂志采访时,他模糊地回忆道:

可能是因为看了一部动画片,里面有一个鸡蛋和一只鸡。鸡说,你好,世界!

超过

标签:, ,

相关推荐

三星半导体产业  三星半导体全球占比

三星半导体产业 三星半导体全球占比

三星电子副总裁李在镕8月份参加了新的RD半导体中心的奠基仪式。 媒体注:9月21日下午,三星集团和三星电子副总裁李在镕在会见媒体时表示,软银集团首席执行官孙正义将于下月访问首尔。预计双方将与英国半导体设计公司Arm结成战略联盟,还可能讨论收购Arm等 ...

深度 1 2022-09-26
风干牦牛肉 鸭肉  牦牛肉干是鸭肉做的吗

风干牦牛肉 鸭肉 牦牛肉干是鸭肉做的吗

原标题:被央视曝光!网上名人风干牦牛肉都是鸭肉。你知道真正的牦牛肉有多贵吗? 近日,央视曝光了一款销量过千万的网络名人食品——西藏风干牦牛肉。经检测,该牛肉制品不含牛肉成分,全部为鸭肉。 说实话,看到这个报道我当时并没有冷静下来,因为它的包 ...

深度 1 2022-09-26
目前,英特尔、高通,英伟达  英伟达和高通

目前,英特尔、高通,英伟达 英伟达和高通

原创 周雄飞 连线出行 文/周雄飞 除了苹果之外,英伟达每年的技术大会也被一些网友戏称为“春晚”。 之所以会被称为“春晚”,是因为在每次的大会上,英伟达都会拿出在显卡、游戏编码器及芯片等多领域的新技术突破或者新产品。而在本周举办的GTC显卡技术大会 ...

深度 1 2022-09-26
游戏公司索尼  索尼旗下的游戏工作室

游戏公司索尼 索尼旗下的游戏工作室

作者:谢 来源:图宠创意 无论是被动还是主动,腾讯、网易等中国游戏大公司都在试图开启中国游戏出海的新篇章。 9月20日,索尼互动娱乐(SIE)北美区前首席执行官、全球工作室董事长肖恩·莱登(Shawn Layden)在LinkedIn上宣布,他已加入腾讯游戏,担任战略顾 ...

深度 1 2022-09-26
岁“娜拉”自驾驶出婚姻两年后

岁“娜拉”自驾驶出婚姻两年后

诺拉离家出走两年后会发生什么? 苏敏,头上顶着“58岁阿姨上路旅行”的标签,“回家了”。两年前抛弃丈夫和孩子的《上路吧》中的58岁大妈再次在网上热炒。 就像当初实用房车的辉煌会被城市的拥堵蒸发一样,这一次,家庭蛛网试图一下子拉住苏敏,试图瓦解她这 ...

深度 2 2022-09-26
谷歌联合创始人投的这家公司也关停了,飞行汽车商业化靠谱吗?

谷歌联合创始人投的这家公司也关停了,飞行汽车商业化靠谱吗?

谷歌联合创始人拉里 middot拉里·佩奇(Larry Page)的星际飞行汽车初创公司宣布倒闭。 当地时间9月21日,飞行汽车初创公司Kittyhawk发表声明称:“我们决定关闭Kittyhawk。”由于背景明亮,Kittyhawk的关机声明引起轩然大波。 据美国消费者新闻与商业频道介绍 ...

深度 2 2022-09-26
许家印为何卸任恒大董事长  许家印谈恒大造车

许家印为何卸任恒大董事长 许家印谈恒大造车

信任成为恒大与利益相关者之间最微妙、最脆弱的一根弦。 文|中国企业家记者李彦谚 编辑|周纯麟 头部摄影|小余伟 “30万元以内最好的纯电动SUV”正式量产,计划10月交付。你会买吗?或者说,你相信吗? 恒大披露的现场图片中,一排穿着工作服的人竖起了大拇 ...

深度 1 2022-09-26
适用苹果芯片了吗  苹果进步最大的芯片

适用苹果芯片了吗 苹果进步最大的芯片

苹果发布会上有一个细节。与iPhone 14 Pro系列一起推出的A16仿生芯片集成了160亿个晶体管,这刚刚接近两年前在M1发布的封装晶体管数量。

深度 3 2022-09-26
蜜雪冰城老板跑路了  蜜雪冰城一年赚

蜜雪冰城老板跑路了 蜜雪冰城一年赚

看了蜜雪冰城的招股书,才知道蜜雪冰城的小生命,五杯奶茶是多么的甜蜜。相比上半年亏损2.54亿元的奈雪,和苦苦保本的喜茶,真是人要死,货要扔。

深度 1 2022-09-26
随着新能源汽车的快速发展,众多产业资本正在积极转型  走进新能源

随着新能源汽车的快速发展,众多产业资本正在积极转型 走进新能源

写作/邓 编辑/陈继英 逐一检查每一层甲板的新能源车车锁是否固定,确保每一辆车在船上不会相互碰撞。这是海员老余在这次航行中最重要的工作。 我在一艘滚装船上度过了剩下的航程。所谓滚装船,就是十几层楼高的巨型海上运输船,主要用来运输汽车;在这个 ...

深度 2 2022-09-26