在NASA的绝密档案室里,有一份紧急联络名单,上面登记的不是现役工程师,而是一群会跳广场舞的大爷大妈——他们中的某些人,甚至需要戴着老花镜才能看清屏幕上的代码。正是他们,在1977年用汇编语言写下了至今仍在240亿公里外运行的代码。
大家好我是火箭叔,这些大爷大妈,刚刚在去年年初完成了一次壮举——修复了旅行者1号的内存故障,使其起死回生,继续为人类探索未知的边界。
他们的工作,无可替代,所以我要抛出一个可能跟所有人都不一样的观点:程序员其实是越老越值钱。因为他们在几十年前写出来的上古代码,至今仍然埋藏在我们日常使用的各种应用程序当中。而能理解和修改这些代码的,只有可能是他们。下面我给你讲几个故事。
比尔欣肖今年82岁,是一位老程序员,他创办了一家叫做“COBOL牛仔”的咨询公司。其团队成员也都是一些程序员,但是,他们的平均年龄高达68岁,最年轻的一位也有40了。而他们的服务收费非常高昂,时薪高达300美元,因为他们的金主是真的金主——银行。比尔欣肖在1970年使用COBOL语言编写了第一款银行ATM软件。这款诞生于1959年的编程语言,在20世纪中叶对企业的顺利运行至关重要。但欣肖哪里想得到,50年以后的今天,世界仍然离不开他和它。虽然COBOL早已不再是程序员的首选语言,但是,全球95%的ATM机、80%的信用卡交易仍然依靠这种语言的支撑。而与之对应的,是很少还有年轻的程序员熟悉这种语言,正因为如此,才让欣肖这些老牛仔们显得不可或缺。
另外一个故事,跟你的网购有关。Perl语言,可能很多人听都没有听过它,但我们却每天都在依赖它:它既为电商网络服务提供支持,也为很多的订票网站,甚至是苹果公司服务。除此以外,还有一些更加重要的组织也在使用它,其中包括的了美国的NASA和CIA,以及英国情报局。应该说,是构成我们当今生活最重要的组成部分之一吧。但Perl基金会的主席却告诉我们,在2024年发布的最新版本中,肯定包含了一些来自1987年第一版的代码片段。也就是说,每当我们在网购时、每当NASA在制订下一年的预算时,都在使用将近40岁的代码。诶,不是说好了我们已经进入AI时代了吗!
但这还不是最夸张的。一些现代软件使用的代码甚至更老。Red Hat 红帽是一家软件公司,该公司发行了开源操作系统 Linux 的一个版本。而其中包含的名为“indent”的命令使用的代码来自 1976 年。在人工智能和云计算时代,我们仍在构建和使用近 50 年前的语言,这世界是不是显得有点太荒诞了。
如果我们再去探索一下航天工业,更是会发现NASA和ESA到处都运行着老得掉牙的代码。为什么他们不换新?理由非常扎心——这些卫星价值数十亿美元,因此发射它们的人真的不愿意做任何不能完全保证成功的事情,而旧代码的可靠性已经得到了充分的证明,何必再去冒险换什么新代码呢!
所以作为程序员,有什么好焦虑的呢!你可是行走的文明备份哦——说不定再过几十年,就是个抢手货啦,保护好身体活久一点最划算!赶紧转发给身边的程序员朋友,让他知道自己多值钱!