科学・技術
アポロ計画のソフトウェア開発を率いたマーガレット・ハミルトン氏、90歳で死去
Margaret Hamilton, who led software development for Apollo program, dies at 90 (news.mit.edu)
要約
コンピュータサイエンスとソフトウェアエンジニアリングのパイオニアであるマーガレット・ハミルトン氏が90歳で死去しました。彼女はMITのチームを率いてアポロ計画の月面着陸ミッションにおけるソフトウェア開発を主導し、ソフトウェアエンジニアリングという分野を確立する上で重要な役割を果たしました。その功績は、2016年の大統領自由勲章の受賞など、数々の栄誉に輝いています。
全文翻訳
MITで20年以上にわたり、ハミルトン氏はコンピュータサイエンスとエンジニアリングの新たな道を切り開きました。彼女の画期的な業績には、人類を初めて月へ送ったコンピュータの最初のプログラムを開発したチームを率いたことが含まれます。
マーガレット・ハミルトン氏は、NASAのアポロ計画においてMITのソフトウェアエンジニアリングチームを率いたことで最もよく知られる、非常に影響力のあるコンピュータ科学者であり、9月30日に90歳で亡くなりました。
130以上の論文を発表したコンピューティングのパイオニアであるハミルトン氏は、ソフトウェアエンジニアリングを専門分野として確立するのに貢献しました。彼女は1959年から1970年代半ばまでMITで働き、その後、成功したコンピューティング起業家およびCEOとなりました。
彼女の生涯にわたる業績は、2016年にバラク・オバマ大統領から贈られた大統領自由勲章を含む多くの賞や栄誉で認められました。その授賞理由には、「ハミルトン氏はソフトウェアエンジニアリングの新しい形態を定義し、人類の歴史を永遠に変えることになる産業の立ち上げを支援しました。彼女のソフトウェアアーキテクチャは人類にとって飛躍的な進歩をもたらし、アメリカが月面に足跡を残すのを助けるコードを書きました」と記されています。
「マーガレット・ハミルトン氏がパイオニアであったと言うこと、彼女が時代を先取りしていたと言うことは、劇的な控えめな表現でしょう。彼女は、その分野がまだ初期段階にあった時代にソフトウェアエンジニアであり、彼女自身が高度なコードを開発しただけでなく、その黎明期の技術を用いて人類が達成したことのない最も複雑なシステムの一つを開発するチームを率いました」と、MIT航空宇宙学科のアポロ計画教授であり暫定学科長であるオリビエ・ドゥ・ヴェック氏は述べています。「アポロ計画は依然として、協力、創意工夫、エンジニアリングの力の最も偉大な証の一つであり、マーガレット・ハミルトン氏はその計画の成功に不可欠な貢献者でした。そして彼女にとってそれは始まりに過ぎませんでした!彼女はその後起業家となり、システムソフトウェアの最先端にとどまり続け、数百万人の人々への提唱者、メンター、そしてインスピレーションとして活躍しながら、並外れたキャリアを築きました。」
初期の人生とMITでのプロジェクト
1936年にインディアナ州パイオリで生まれたハミルトン氏は、1955年にミシガン大学で数学を学び始め、その後アールハム大学に転校し、1958年に哲学を副専攻として数学の学士号を取得しました。彼女は、夫が法科大学院に進学するためにボストン、マサチューセッツ州に移住した1959年に移住しました。ハミルトン氏はすぐにMITの気象学部門で非常勤の職を見つけ、気象学教授のエドワード・N・ローレンツ氏(SM '43, ScD '48)と共に天気予報ソフトウェアに取り組みました。これが彼女のコンピュータプログラミングへの最初の入り口となり、彼女の仕事はカオス理論に関するローレンツ氏の将来の出版物に影響を与えることになります。
そこから、ハミルトン氏は1961年にMITリンカーン研究所のプログラマーとして、アメリカ初の防空システムであるSemi-Automatic Ground Environment(SAGE)プロジェクトに取り組みました。ハミルトン氏は、アメリカ空軍が潜在的に敵対的な航空機を捜索するために使用したプロトタイプAN/FSQ-7コンピュータ(XD-1)用のソフトウェアを作成しました。この間、ハミルトン氏は当時新しく、ほとんど未踏の概念であったソフトウェア信頼性への関心を深め始めました。
1965年、ハミルトン氏が大学院進学の準備をしていたとき、彼女の夫が新聞広告を見ました。MITの計装研究所が「月へ人を送る」ためのソフトウェア開発者を募集していたのです。研究所はNASAからアポロ計画のオンボードフライトソフトウェアを構築する契約を獲得していました。この挑戦に興味を持ったハミルトン氏は応募し、MITのアポロプロジェクトで最初のプログラマー、そしてプロジェクトで最初の女性プログラマーとして採用されました。ハミルトン氏は、まず無人アポロミッションのソフトウェアに取り組み、その後、有人ミッションのオンボードフライトソフトウェアを開発するチームのリーダーに昇進しました。1968年までに、彼女はコマンド・サービス・モジュールチームの責任者である副所長となり、400人以上の人々がアポロのソフトウェアに取り組んでいました。「私自身の視点からすると、ソフトウェアの経験そのもの(設計、開発、進化、パフォーマンスの観察、そして将来のシステムのためにそこから学ぶこと)は、ミッションを取り巻く出来事と同じくらいエキサイティングでした」とハミルトン氏は2009年にMITニュースに語っています。「二度目のチャンスはありませんでした。私たちはそれを知っていました。私たちは仕事に真剣に取り組みました。多くの者が20代でこの旅を始めました。解決策や新しいアイデアを思いつくことは冒険でした。献身とコミットメントは当然のことでした。相互尊重は全面的にありました。ソフトウェアは謎、ブラックボックスであったため、上級管理職は私たちに完全な自由と信頼を与えてくれました。私たちは方法を見つけなければならず、そして見つけました。振り返ってみると、私たちは世界で最も幸運な人々でした。パイオニアになる以外に選択肢はありませんでした。」
ビデオを見る: マーガレット・ハミルトン氏、ソフトウェアエンジニアリングについて(ビデオ:Hack the Moon/Draper)
「防御的」プログラミングと優先度駆動型ソフトウェアが人類を月へ導く
ハミルトン氏は、リーダーシップの才能だけでなく、問題解決と批判的思考の鋭い直感を発見し、それがプロジェクト・アポロを何度も救うことになります。有名な「ローレン・エラー」として知られる事件がありました。ある日、彼女の4歳の娘ローレンが計装研究所のコマンドモジュールシミュレーターで遊んでいたところ、飛行中にP01と呼ばれる起動前プログラムを誤って起動し、シミュレーターを完全にクラッシュさせてしまいました。ハミルトン氏は、技術文書にプログラムの追加機能を作成し、ユーザーに飛行中にP01を起動しないように警告しました。彼女はまた、実際のミッションでこのエラーが発生しないようにするソフトウェア修正を提案しましたが、高度に訓練された宇宙飛行士が同じ間違いを犯すことは決してないという理由で却下されました。しかし、1968年のアポロ8号ミッション中に、ジム・ラヴェルが飛行中に誤ってP01を起動し、飛行中の航法データが消滅するという事態が発生しました。ハミルトン氏と彼女のチームがエラー解決のために呼ばれ、その後、彼女が提案した変更がプログラムに組み込まれました。これは、「防御的」プログラミング、つまりエラーを予測または修正できるソフトウェアを構築する実践の初期の例でした。ハミルトン氏の最も有名な貢献は