本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。
比你成功的人,比你还努力。
上周,SOHO中国董事长、地产大亨潘石屹,56岁生日当天发布微博宣布进军编程语言Python。
紧接着第二天,又更新微博解释为何会做出此举。
潘石屹给出的解释大致就是,在不断发展的社会中,要指挥机器,就需要学习让机器听得懂的语言。
而他觉得Python是进化最好的程序语言,也是最值得去学习的语言之一。
再之后,潘石屹发微博开始挑书。
果不其然,连他朋友都会对儿子说:
潘叔叔都学习Python了,你还不努力学习!
但其实,我们所熟知的那些程序语言或系统的开创者们,大都已经超过或接近退休年龄(按60周岁算):
Linux之父Linus Torvalds今年50岁;
Java之父James Gosling 今年64岁;
C#之父Anders Hejlsberg今年59岁;
PHP之父Andi Gutmans,今年41岁;
XML之父,Tim Bray今年61岁。
然而,他们中的大多数仍在一线奋斗着事业,真可谓是老骥伏枥,志在千里。
今天,量子位就带大家盘点一下程序语言/系统之父们的传奇人生。
Python之父——Guido van Rossum(63岁)
Guido van Rossum(龟叔),出生于1956年,江湖人称“Python之父”、“仁慈的独裁者”。因开创Python语言被世人所熟知。
△Python之父,Guido van Rossum
1982年,龟叔在阿姆斯特丹大学获得数学和计算机科学硕士学位。即使拥有双料资质,但他更喜欢计算机所带来的乐趣:
我总是趋向于做计算机相关的事情,热衷于做任何和编程相关的工作。
那么Python是怎么诞生的呢?先介绍一下大背景。
当时龟叔已经接触过诸如C或Pascal等语言,这些语言设计原则主要是让机器运行的更快。与此同时80年代也正在掀起个人计算(PC)机的浪潮。
但可想而知,配置是完全跟不上的。举个例子,早期的Macintosh,一个大数组就有可能占满内存。为了提高效率,程序员们在使用编程语言时候,不得不像计算机一样思考。
虽然龟叔很熟悉C语言,但他更喜欢用Shell。虽然Shell并不是真正的编程语言,但是C语言上百行代码才能实现的功能,Shell几行就能实现(因为它的本质是调用)。但缺点也是比较明显的——不能全面调动计算机功能。
这时,ABC语言让龟叔看到了一丝希望。
ABC语言是荷兰的数学与计算机研究所开发的,龟叔在这工作时也参与了它的开发。简而言之,ABC语言最大的亮点就是易用。
1989年圣诞节期间,龟叔因为无聊,就决定开发一种新的脚本解释程序来继承ABC语言。而龟叔又是英国电视喜剧Monty Python’s Flying Circus的热衷粉,故取名Python。
1991年,第一个Python编译器诞生,是用C语言实现,并能够调用其库文件。
最初的Python是由龟叔一人开发,但他的同事在使用后给予了许多宝贵的反馈意见,并参与到了Python的改进工作。于是乎,龟叔和这些同事便构成了Python的核心团队。他们将工作之外的大部分时间都投入到了Python的发展。
由于Python注重逻辑的思考,而非常细枝末节的东西都交给了编译器去处理,所以深受程序员们的喜欢,并迅速流行起来。
时至今日,已然成为全球最受欢迎的编程语言之一。
而龟叔虽然一直身在企业工作,但仍对Python的开发进程保持关注,并在必要的时候提出意见作决定。因此在Python社区被誉为“仁慈的独裁者”。
直到去年,龟叔因为一个Python的改进提案(PEP 572),决定退出核心决策层。他在邮件中写道:
我不想再为 PEP如此劳心劳力了,尽管我在进行着如此艰难的战斗,却发现仍然有很多人不满意我所做出的决定。
这一消息引起轩然大波,许多网友纷纷留言“人生苦短,Python需要你”。
龟叔回应道:仍会在幕后出现。
就在前不久,龟叔发推宣布正式退休。
可谓是苦乐参半:我要离开Dropbox公司,以及现在,我已经退休了。我在这里学到了很多东西,我将怀念在这里的工作。
网友对其留言:退休意味着推出一些有趣的项目,能否知道你在其他地方在做些什么吗?
龟叔对此回复了“PEG解析系列概述”的链接。
再者,量子位之前报道过网友统计各路大佬提交代码(git commit)时间分布。龟叔堪称夜行兽,24小时都在提交代码。
看来龟叔的退休生活仍将投入到编程事业中。
Linux之父——Linus Torvalds(50岁)
Linux之父Linus Torvalds在业界也算颇有名气。
从他的经典名言:Read the fxxking source code,不难看出是个经常带有情绪的人。
△Linux之父,Linus Torvalds
1991年十月,还是个大学生的Linus在comp.os.minix发布消息称,他准备开发一个Unix操作系统的clone——一个新的操作系统。
为了能被更广泛的传播,我准备把源代码发不出来。目前版本号只有0.02,但是我已经上面成功使用了bash,gcc,gnu-make,gnu-sed,compress等等。
而到了1992年1月,Linux的用户只有100人左右。而应用程序的发展使得Linux获得了类似Windows那样的图形前端(之前特别想DOC操作系统),这也是使得它被广泛接受的原因之一。
1994年3月,Linux 1.0版本出现,而此时它已经拥有了一定数量的用户群体。而Linux的发展得益于它相对自由的环境,所有的hacker们可以自由的“把玩”任何附加性能或予以改进。
或许正是Linus这种信任,这些“副手”们反而创造了内核中较大的部分。
Lunix的发展也是相当迅猛的,在现如今的IT界,可谓是无人不知,无人不晓。已然不是clone Unix的那个操作系统了。
而Linus本人的名气不仅仅得益于Linux操作系统,与他的性情也有很大的关系——怼天怼地怼空气。
觉得标准看不过去,怼!
觉得厂商问题处理不积极,怼!
觉得程序员代码写的不好,怼!
但即使是这样的天不怕地不怕的人,去年9月为自己多年的不当行为公开道歉:
我在电子邮件中的轻率攻击既不专业又不必要,我现在知道这是不对的,我真的很抱歉。
与此同时,Linus宣布休息一段时间。
而在近期的开源欧洲峰会上,Linus又出现了,与VMware首席开源官Dirk Hohndel对话时表示:
我不再懂代码了。
我不再认为自己是一名程序员了。
其实,Linus的意思是指目前他大部分代码都是写在邮件里,有人给他发补丁,他就用伪代码回复。
换言之,Linus目前的角色更倾向于幕后,是个维护者,而不再是个开发者。
不过,你以为这样的Linus是纯靠胆识和怼而成功的吗?来看看他的工作时间。
白天工作,没问题。但是这位大神的代码从早上7点就开始有喷发之势,这个劲头几乎能持续到晚上八九点钟。
看来,成功与勤奋还是密不可分。
Java之父——James Gosling(64岁)
Java,一个在编程语言神坛居高不下的语言,常年霸占TIOBE编程语言排行榜第一。
就像提到微软离不开比尔·盖茨一样,提到Java,自然也会想到它的“缔造者”,James Gosling。
△Java之父,James Gosling
James从小就对当时刚刚兴起的计算机产生了浓厚的兴趣。
14岁时,学校组织去附近大学参观,他便记下了计算中心的门锁密码,再往后的日子里,James就会偷偷溜进去学习编程。一年之后,大学天文系还招他做了临时编程员。
通过不懈努力,James在加拿大卡尔加里大学拿到理学学士的荣誉学位,又在卡耐基梅隆大学攻读计算机科学的硕士和博士学位。
1983年,James来到IBM工作,但是当时的领导并不看重他所从事的工作站内容,于是便跳槽到了Sun公司。
1990年,Sun公司打算开发一个名为“绿色计划”的项目,首选的语言就是当时流行的C++。但在开发过程中,James和团队成员发现C++由于太过于复杂,会导致很多错误的发生。
既然不好用,也没别的语言可用,James就自力更生,打算自创一门编程语言。这便是Java的雏形。
但起初,James对这门语言起名为C++ ++ —,意味在C++基础上添加更多好的内容,摒弃不好的功能。但可想而知,没多少人会喜欢这样的名字,无奈之下,他只好将语言更名为Oak。
1994年,互联网蓬勃发展,正是给了Oak一个非常好的机遇,也在业界好评如潮。但好巧不巧,Oak这个名已经被一家显卡制造商占用。无奈之下,只能再改名。
于是乎,Java便应运而生。
到2000年,Java 已经成为世界上最流行的编程语言。
在2009年时,Oracle公司亿74美元价格收购了Sun公司,James也出任了甲骨文客户软件部门的 CTO。但在接下来的日子里,James发现Oracle的工作、薪酬与他所期望的背道而驰,于是便加入了谷歌。
在谷歌工作半年后,又受好友的邀请,出任机器人设计制造公司Liquid Robotics首席软件架构师一职。
2017年5月,62岁高龄的他依旧没有停止在编程道路上前进的步伐,高调加入亚马逊AWS。
真可谓是“生命不息,编程不止”。
程序语言之父们仍在努力
以为开创了一门流行的语言,名利双收,就不用再拼了?
再来看看其他的程序语言之父们吧!
Anders Hejlsberg,C#之父,也是TypeScript、.Net创立者,来看看他惊人的GitHub贡献吧。
Andi Gutmans,PHP之父,2016年加入AWS,目前负责Search和New NoSQL。
Tim Bray,XML之父,2014年加入亚马孙,仍旧在编程。
当然,还有许许多多的高龄、成功的程序员们还在为自己所热爱的事业打拼着。
他们的传奇人生不禁让小编想起电影《隐藏人物》中的经典台词:
如果有人邀请你登上一艘火箭,不要问上去后坐哪;
如果你有幸登上了一艘火箭却发现没有自己的座位,想办法创造一个。
当然,不是所有人都有天赋去创造一艘属于自己的火箭。但从这些程序语言之父身上,应当看到的是对事业的热爱与坚持。
程序语言大比拼
全世界有600多种程序语言,它们有时就像时装一样,更新迭代速度惊人,设计不得当,很有可能就被淘汰。
或许这就是大佬们仍在奋斗的原因之一。
但有些程序语言从诞生至今依旧被广泛学习和使用,经久不衰:
C语言诞生于1972年,47岁;
C++语言诞生于1985年,34岁;
Python语言诞生于1991年,28岁;
Ruby语言诞生于1993年,26岁;
PHP语言诞生于1995年,24岁;
Java语言诞生于1995年,24岁;
C#语言诞生于2000年,19岁
……
而这些语言每年的“厮杀”也是非常激烈的。
根据知名编程语言排行榜TIOBE,2019年的排名如下:
Java依旧排名第一,C和Python分别位居第二和第三,C++和C#紧随其后。
那么问题来了:骚年们,你觉得世界上最好的语言是哪个呢?