计算机科学家玛格丽特·汉密尔顿(Margaret Hamilton)于9月30日去世,享年90岁。作为NASA阿波罗计划期间麻省理工学院仪器实验室软件工程团队的领导者,她因编写了帮助人类登月的关键代码而广为人知,并致力于将软件工程确立为一门独立学科。

汉密尔顿一生发表130多篇著作,曾获2016年由奥巴马总统颁发的总统自由勋章。奥巴马在授奖词中评价道:“她定义了软件工程的新形式,启动了一个将永远改变人类历史的行业。”

从气象预报到阿波罗代码

汉密尔顿1936年出生于印第安纳州,1958年获得数学学士学位。1959年移居波士顿后,她在麻省理工学院气象系从事天气预报软件开发,随后加入林肯实验室参与美国首个空中防御系统SAGE项目。在此期间,她开始关注当时尚属空白的软件可靠性领域。

1965年,汉密尔顿加入麻省理工学院仪器实验室,成为阿波罗项目首位女性程序员。她最初负责无人任务软件,后升任载人任务机载飞行软件开发团队负责人。至1968年,她领导着超过400人的团队,负责指挥舱和服务舱的软件工作。

汉密尔顿回忆称,当时高层给予团队完全信任,让他们在缺乏先例的情况下探索软件设计。“我们是世界上最幸运的人;除了成为先驱,别无选择。”她说。

关键算法确保登月成功

汉密尔顿的领导力与技术直觉多次挽救阿波罗项目。著名的“劳伦错误”源于其四岁女儿在模拟器中误触预发射程序导致崩溃。尽管初期修复建议被否决,但在阿波罗8号任务中宇航员吉姆·洛弗尔重现该错误后,汉密尔顿提出的防错机制被整合进系统,成为早期“防御性”编程的典范。

她对阿波罗计划最显著的贡献体现在1969年阿波罗11号任务中。当登月舱计算机因过载发出1202警报时,汉密尔顿团队设计的优先级驱动软件自动关闭非关键后台任务,确保着陆程序优先执行。这一决策让休斯顿控制中心放心继续任务,最终助力人类首次踏足月球。

确立软件工程学科地位

阿波罗计划结束后,汉密尔顿于1976年创立高级软件公司(Higher Order Software),十年后又成立汉密尔顿科技公司(Hamilton Technologies),推广其通用系统语言(USL)及错误预防方法论。

她曾坦言,早期使用“软件工程”一词时常遭嘲笑,但她坚持争取该领域的正统地位,以使软件开发获得与硬件工程同等的尊重。凭借杰出贡献,她先后获得NASA杰出太空法案奖、入选国家航空名人堂,并成为乐高致敬NASA女性的官方小人仔原型之一。

汉密尔顿留下了女儿劳伦、女婿理查德·塞莱尼克及多名孙辈。追悼会将于春季在马萨诸塞州剑桥市举行。