代码传奇 | 明明可以靠颜值 却用代码把人类送上了月球的女人——Margaret Hamilton

转载 2018年01月11日 00:00:00

点击上方“程序人生”,选择“置顶公众号”

第一时间关注程序猿(媛)身边的故事


据说「软件工程师」这个名词就是她发明的


玛格丽特站在阿波罗计算机指导手册 (AGC) 的源代码程序列表旁边,这些材料摞起来比她的人还要高。图片来源:Margaret Hamilton


缔造传奇的人似乎有个共性:本来没想干一票大的,甚至她的打算都只是相夫教子,却“一不小心”把人类送上了月球——在 1960 年代做职场妈妈已经是件很不寻常的事,而玛格丽特竟然还是个给太空飞船写代码的程序员。可以说,没有Margaret Hamilton,就没有阿姆斯特朗的一小步和人类的一大步。


  • 那时的周末或者平常夜晚,玛格丽特会把女儿劳伦带来实验室。在俯瞰查尔斯河的办公室里,四岁的劳伦在地板上熟睡,而玛格丽特忙着编写代码——这些代码,最终都会添加到阿波罗控制舱的计算机里

  • 那时阿波罗登月计划启动了,玛格丽特在实验室带领一次史诗般的工程壮举,这项工程将改变人类和科技的未来

  • 那时离微软的出现还有 10 年,离马克·安德森 (Marc Andreessen,这家伙是世界上最早开发浏览器的人) 发现软件正在「吞噬世界」也还有将近 50 年。


玛格丽特躺在阿波罗控制舱的模拟器内,图片来源:Margaret Hamilton


玛格丽特和她的女儿劳伦,图片来源:Margaret Hamilton


舞会皇后 Margaret Hamilton


1954 年,她从汉考克高中毕业,随后入读厄勒姆学院,并于四年后取得学士学位,专业是数学,辅修哲学


在这段黄金岁月里,风华正茂的美丽姑娘玛格丽特在厄勒姆学院认识了詹姆士·考克斯·汉密尔顿。在很多人眼里,他只是个不起眼的男孩。而玛格丽特早就在校园里声名远播,已享有「舞会皇后」的美名。爱神丘比特射中了这对璧人,他们不久后便结婚了。


毕业后,玛格丽特·汉密尔顿一边在高中教数学和法语,一边等着丈夫拿到学士学位。之后,他们搬到波士顿,玛格丽特在布兰代斯大学做抽象数学方面的研究。


然而,两个人的小日子还是太紧张了,此时一个工作机会摆在了她面前,当时计算机科学的先锋MIT里一个实验室在招临时编码工。玛格丽特抱着试试看的态度,就这样踏进了程序员的殿堂。


一开始,她为天体学系写天气预报系统的代码,因为工作出色,转为正式工。后来又去了大名鼎鼎的林肯实验室,在这里,玛格丽特给北美防空司令部的半自动地面防空系统项目工作。期间为第一台 AN/FSQ-7 作战指挥中央系统编写探测敌方飞行的软件。


阿波罗飞行控制软件背后的大脑


玛格丽特的事业发展渐渐上了轨道,而此刻的软件世界——由于肯尼迪在 1961 年发起的阿波罗登月项目——也身处巨变的边缘。玛格丽特就职于 MIT 的仪器实验室,在那里,她和同事一起为世界上第一部便携式计算机写代码,同时也创造了计算机编程的核心理念。玛格丽特成了系统编程的专家,也在多场重要的技术争论中得到认可。「我最开始研究编程的时候,没人知道我们在干嘛。我们就像身处美国荒凉的大西部,没有这样的课程,也没有任何一个教授教这个」,玛格丽特说。


左下角的是玛格丽特,她和其他同事正在MIT为阿波罗8号提供后方支持。图片来源:Margaret Hamilton


1965年,玛格丽特开始负责“阿波罗”号计算机的飞行软件。对玛格丽特而言,这是一段激动人心的日子,整个美国都指望着她的工作成果。但是有时候压力也会让她夜里睡不着。


有一次,在参加过一个深夜派对之后,玛格丽特又冲回实验室去修改一段突然想起来出错了的代码。「我总是在幻想报纸的新闻标题,它们会追问错误是如何发生的,而最终原因会指向我」。


软件成了美国要赢登月竞赛的重要筹码。在 1968 年,已经有超过 400 人参与研发阿波罗号的软件。当然,最终人们发现软件为世界带来的远超于此。当玛格丽特和同事在为阿波罗飞船编程的时候,他们也在孵化这个未来估值 4000 亿美元的产业。


获总统自由勋章


一天,劳伦在摆弄 MIT 控制舱模拟器的显示器键盘一体机 DSKY。当她在键盘上乱按的时候,一条错误信息突然出现。劳伦不知怎地启动了一个叫做 P01 的预运行程序,原本正在飞行状态的模拟器一下子崩溃了。


虽然一般来说宇航员不会犯这样的错,但玛格丽特还是想加一段代码防止这种状况的发生。这一提议被 NASA 否决,「他们一遍又一遍地跟我说宇航员不会犯任何错误,他们被训练得近乎完美,」玛格丽特说。她转而加了一句程序说明,所有 NASA 工程师和宇航员都能看到:「不要在飞行过程中按下 P01」。她回忆说,「所有人都说,『那样的事情永远都不会发生』。」


但事情的的确确发生了。时间大约在 1968 年的圣诞节,进入阿波罗 8 号飞船的第五天飞行,宇航员吉姆·洛威尔 (Jim Lovell) 不小心在飞行中启动了 P01 程序。当电话从休斯顿打来的时候,玛格丽特正在仪器实验室的 2 层会议室。启动 P01 程序导致此的导航数据全部清空,阿波罗计算机无法计算出如何返回地球。


玛格丽特和 MIT 的程序员们需要想出一个补救的办法,必须是无错漏的完美办法。在花费 9 小时钻研过面前 8 英寸厚的程序列表后,他们有了一个计划。休斯顿方面需要上传一份新的导航数据,而后一切都会顺利进行。多亏了玛格丽特,还有调皮的劳伦,阿波罗号上的宇航员才得以重返地球。


她做了一个最美的人生选择


时至今日,当你看到玛格丽特的照片,她的美丽跨越了时代和国籍,你仍然会惊叹于她出众的外貌。


她甚至在 1969 年就已经引领了黑丝连衣裙的流行女神装扮,中年之后的她依然美丽知性。



到 1970 年代,玛格丽特已经超越了之前在 NASA 和阿波罗计划中的研究。她后来成立并领导了多家软件公司。如今她的公司汉米尔顿科技距离她开始职业生涯的地方只有几个街区远——MIT,那个至今仍引领代码革命、仍然仰望星辰的地方。


在当今「网红」遍布的喧嚣时代,颜值似乎是你通向康庄大道的捷径。然而,那个时代的她选择用才华征服这个世界,走了一条特立独行的人生之路。她不为自己的美貌所累,而选择了一条苦逼程序员的职业生涯,而且她还领导了堪称为人类历史上最伟大的软件工程项目


明明可以靠颜值,她却偏偏拼代码。玛格丽特·汉密尔顿,这个集智慧、美貌于一身的女子,告诉我们,最美的一条人生之路是用你的智慧为这个世界带来一点点改变。


*本文素材整理自:新浪科技、网易数码、百度百科。


THE END -


点击图片get往期内容

CTF writeup 1_网络安全实验室

基础关1.key在哪里? 过关地址打开网址 “key就在这里中,你能找到他吗? ” 看看源代码有没有线索~果然 key就在这里中,你能找到...
  • qq_30637197
  • qq_30637197
  • 2016年10月26日 12:28
  • 251528

github上修改别人的代码并上传

http://doc.okbase.net/azhuzhu/archive/38704.html 我登陆github,要下载xxx的代码,然后搜索: 回车后: 然后点击U...
  • z278718149
  • z278718149
  • 2015年10月20日 17:40
  • 3234

Github上怎么修改别人的项目并且提交给原作者!图文并茂!

Github上怎么修改别人的项目并且提交给原作者!图文并茂! 写这篇博客的初衷,是因为我的项目Only需要一些朋友一起参与进来,但是很多的Git都不是很熟练,其实版本控制这种东西没有什么难度的,只...
  • qq_26787115
  • qq_26787115
  • 2016年08月12日 18:59
  • 11616

数学建模常用Matlab/Lingo/c代码总结系列——hamilton回路

提供一种求解最优哈密尔顿的算法---三边交换调整法,要求在运行jiaohuan3(三交换法)之前,给定邻接矩阵C和节点个数N,结果路径存放于R中。   bianquan.m文件给出了一个参数实例,可...
  • xiangshimoni
  • xiangshimoni
  • 2011年11月20日 00:20
  • 3413

代码传奇 | 搞罢餐的热血青年到 PHP大神的蜕变——“鸟哥”惠新宸

点击上方“程序人生”,选择“置顶公众号”第一时间关注程序猿(媛)身边的故事编者按:2017年底,我们有幸采访到“鸟哥”,他是从一个在网上搜PHP教程的初学者,到PHP开发组核心成员,“鸟哥”(惠新宸)...
  • csdnsevenn
  • csdnsevenn
  • 2018年01月06日 00:00
  • 2616

代码传奇 | 身价10亿的程序员 雷军当年也为他打工——WPS之父 求伯君

如果你和我说,有个小孩儿 3 岁话没说利索的时候就会背九九乘法表;5岁还没上小学围棋就达到业余五段水准,我的第一反应会认为这一定是个“虚构人物”。 但这位“虚构人物”不止于此...
  • ruanchengmin
  • ruanchengmin
  • 2017年12月08日 20:05
  • 150

代码传奇 | 身价10亿的程序员 雷军当年也为他打工——WPS之父 求伯君

如果你和我说,有个小孩儿 3 岁话没说利索的时候就会背九九乘法表;5岁还没上小学围棋就达到业余五段水准,我的第一反应会认为这一定是个“虚构人物”。 但这位“虚构人物”不止于此,他还有很多...
  • csdnsevenn
  • csdnsevenn
  • 2017年12月07日 00:00
  • 2001

代码传奇 | 身价10亿的程序员 雷军当年也为他打工——WPS之父 求伯君

如果你和我说,有个小孩儿 3 岁话没说利索的时候就会背九九乘法表;5岁还没上小学围棋就达到业余五段水准,我的第一反应会认为这一定是个“虚构人物”。 但这位“虚构人物”不止于此...
  • qq_40267706
  • qq_40267706
  • 2017年12月08日 20:17
  • 96

就是这个美女程序员,写出了让阿波罗成功登陆月球的代码!

去年底 JD (@nevesytrof )在Twitter上分享了这张照片,获得广大回响,让这张照片一度在网路上疯传。   这是张1969年拍摄的照片,当中的人像是数学与计算机科学先锋— Marga...
  • u012513234
  • u012513234
  • 2015年02月01日 18:58
  • 829

人类首次登上月球,伟大的时刻

  • 2010年01月09日 19:58
  • 31KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:代码传奇 | 明明可以靠颜值 却用代码把人类送上了月球的女人——Margaret Hamilton
举报原因:
原因补充:

(最多只允许输入30个字)