计算先驱、软件工程概念创始人玛格丽特·汉密尔顿(Margaret Hamilton)去世,享年90岁。

汉密尔顿最广为人知的成就,是为阿波罗11号登月任务编写代码。一张她站在一摞代码打印稿旁的照片曾广为流传,成为这一历史时刻的经典注脚。

然而,她的遗产远不止于此。当今所有“软件工程师”的职业头衔,均归功于她。

2017年,汉密尔顿曾回顾道:“我努力争取软件行业的合法性,以便软件及其开发者能获得应有的尊重。”为此,她首创“软件工程”一词,将其从硬件及其他工程类别中剥离,并视为整体系统工程的一部分。

“起初,这个短语被视为笑谈。人们嘲笑我的激进想法。但最终,软件不可避免地获得了与其他学科同等的尊重。”她说。

汉密尔顿也是“防御性编程”的先驱。该理念旨在让软件能够自行预见或修复错误。她在2016年谈及初衷时表示:“当程序崩溃、警报响起时,我不希望那是我的程序造成的破坏。”

这一理念在阿波罗11号任务中发挥了关键作用。当时,登月舱“鹰号”计算机出现1202错误,显示硬件开关故障导致系统过载。在距离着陆仅剩三分钟之际,汉密尔顿团队开发的软件通过优先级排序,关闭非必要后台任务,确保了成功着陆。

早期的科技企业家

汉密尔顿也是一位早期的科技创业者。阿波罗计划结束后,她领导了一家麻省理工学院(MIT)衍生公司,并创立了两家科技初创企业。

她最后的事业是汉密尔顿科技公司(Hamilton Technologies),旨在通过现代化规划、系统工程和软件开发流程,提高可靠性、降低成本并加速产品上市。该公司最著名的成果是“通用系统语言”(Universal Systems Language)。这是一种专为复杂软件系统设计的建模语言和方法论,深植于汉密尔顿防御性编程及预防错误的哲学。

尽管因高度专业性而未像其他编程语言那样普及,但通用系统语言在诞生30多年后,至今仍在使用。

麻省理工学院航空航天系代理主任奥利维耶·德韦克(Olivier de Weck)评价称:“说汉密尔顿是先驱,甚至是一种轻描淡写。在软件工程尚处萌芽的时代,她不仅开发了先进代码,更带领团队利用这项新兴技术,构建了人类有史以来最复杂的系统之一。”

“她激励了几代计算机科学家和工程师。她的职业生涯致力于防止错误及‘应对未知’,以身作则地建立了基于问题解决和系统工程的实践体系,让我们所有人受益。”德韦克补充道。