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

今天 , “Linux三剑客”中一个非常古老的工具突然登上了GitHub今日热榜:
80岁还嗖嗖改代码的Unix命名人 他说解决问题全靠拖
文章图片
——这竟是因为80岁的原作者更新了 。
是的你没听错 , 有人都80岁了还在改代码!
这位大神 , 就是加拿大计算机科学家——布莱恩·柯林汉(BrianKernighan) 。
与比尔盖茨、Java之父、Python之父等大佬齐名的他 , 开创的“HelloWorld”范式让每一位学编程的同学刻烟吸肺:
不管你学的什么语言 , 第一个程序就是学会输出它 。
printf(“HelloWorld!”);
cout<<“HelloWorld!”;
print“HelloWorld!”
……
此外 , C语言的第一本编程著作 , 作者之一有他;Unix系统的早期开发人员、AWK(Linux及Unix中的文本数据处理工具)的共同创造者名单中 , 他也赫然在列 。
80岁还嗖嗖改代码的Unix命名人 他说解决问题全靠拖
文章图片
如今老爷子已经满头白发 , 还活跃在“一线”——
今年5月 , AWK的GitHub仓库中 , 老爷子提交了新的pullrequest , 给AWK添加了一直没法做到的Unicode支持 。
对此 , 网友的态度是这样的:
80岁还嗖嗖改代码的Unix命名人 他说解决问题全靠拖
文章图片
是什么让这位大佬常年保持编程热情的呢?
免试进入贝尔实验室
事情还得从柯林汉的大学时代说起 。
柯林汉于1942年出生于加拿大 , 本科就读于多伦多大学工程物理学 。
他形容这是一个给那些自己也不知道想学什么的人准备的“大杂烩”专业 , 但很幸运 , 刚上大一他就对编程开始感兴趣 , 学起了Fortran语言 。
当时 , 计算机的发展还处于初期 。 他直到大三才见到全校唯一的一台晶体管计算机:IBM7094 。
由于太贵(时值300万美元) , 学生们并没有机会碰到它 。
80岁还嗖嗖改代码的Unix命名人 他说解决问题全靠拖
文章图片
由此可见彼时工具的稀缺 , 所以正在学编程的柯林汉也就只是拜读了丹尼尔·麦克拉肯的大作 , 获得了“颇丰”的理论知识 , 实际并没有真正上手写过一行代码 。
大一暑假 , 不知道他如何在一家石油公司找了个实习 , 任务是用COBOL语言给精炼厂开发优化软件 。
鉴于这个语言他不熟 , 也没有编程经验 , 所以最后也没写出个像样的程序来 。
虽然受了一点小挫折 , 但他对编程的热情并没有退却 , 回到学校继续研究 。
大四毕业后 , 柯林汉决定继续深造 , 并拿到了MIT和普林斯顿大学的offer 。
由于去MIT要7年才能完成博士学业 , 且每周需做30小时的研究助理工作 , 而普林斯顿只要3年且提供全额奖学金 , 再加上柯林汉的好友就在普林斯顿 , 他毫不犹豫地选了后者 。
在普林斯顿大学 , 柯林汉读的是电子工程专业 , 因为当时同样还没有专门的计算机系 。
这完全没妨碍他前进 。
读博期间 , 他先是得到了MIT的实习机会 , 有幸在后来的图灵奖得主费尔南多·科巴托(FernandoCorbató)门下干活 , 给一种叫作Multics的分时操作系统项目写代码 。
转年夏天 , 他又得到了贝尔实验室的实习机会 , 在那里写汇编语言 。
为了方便在Fortran程序中做列表处理 , 他还写出了一套函数库 , 他形容这份工作“十分过瘾” 。
转眼到了博士毕业 , 柯林汉被直接留校任教 , 并在没有进行面试和研究成果展示的情况下 , 成为了贝尔实验室的正式成员 , 足以见其优秀 。
而他和Unix的渊源也就此展开 。