マーガレット・ハミルトン

マーガレット・ハミルトン (Margaret Hamilton):ソフトウェアと名付けたエンジニア

月面から3分のところで、アポロ11号 (Apollo 11) の誘導コンピュータが警報を発し始めた。バズ・オルドリン (Buzz Aldrin) は、7つの処理を行うよう設計された機械に対し、8つ目の同時タスク要求を出していたのだ。着陸はそこで中止されたかもしれない。しかし中止されなかったのは、ソフトウェアを統括していた女性が何年も前にまさにこのような事態が起こることを想定し、コンピュータが故障するのではなく重要度の低い自身の作業を切り捨てるようプログラムしていたからだ。「もしコンピュータがこの問題を認識し、復帰措置をとっていなければ」と彼女は後に語っている、「アポロ11号がこれほど成功した月面着陸になったかどうか疑問だ」。

インディアナ州パオリ (Paoli)

マーガレット・エレイン・ヒーフィールド (Margaret Elaine Heafield) は1936年8月17日にインディアナ州パオリで、ケネス (Kenneth) とルース・エスター・ヒーフィールド (Ruth Esther Heafield) のもとに生まれた。家族はミシガン州に引っ越し、彼女は1954年にハンコック高校 (Hancock High School) を卒業した。父親は詩人で祖父は校長であり、家庭環境は数学と同じくらいしっかりと彼女を哲学へと向かわせた — 彼女は最終的に両方を専攻することになる。1955年にミシガン大学 (University of Michigan) で学び、その後アールハム大学 (Earlham College) に転学し、1958年に哲学の副専攻とともに数学の学士号 (BA) を取得した。彼女はアールハム大学の数学科主任であったフローレンス・ロング (Florence Long) が、抽象数学と学問の道へ進むよう励ましてくれたことに対する功績を認めている。1958年6月にジェームズ・コックス・ハミルトン (James Cox Hamilton) と結婚し、翌年には娘のローレン (Lauren) が生まれた。

気象学、カオス、ギリシャ語、ラテン語

計算機における最初の仕事は、1959年中頃からMITの気象学部門でエドワード・ノートン・ロレンツ (Edward Norton Lorenz) のもとで行い、LGP-30およびPDP-1マシン用の気象予測ソフトウェアを書いた。ロレンツは後に、カオス理論となった研究への彼女の貢献を認めている。1961年から1963年まで、MITリンカーン研究所 (MIT Lincoln Laboratory) で、半自動地上防空組織(Semi-Automatic Ground Environment)防空システム用の試作機AN/FSQ-7のプログラミングを行った。そこではコメントがギリシャ語とラテン語で書かれた手に負えないで有名なプログラムを手渡され、それを動作させた最初の人物となった。両方の仕事には、彼女を定義づける共通の特徴があった。それは、誰も正常に動かせなかったシステムが彼女に任されたということである。

計測機器ラボ

1965年、彼女はアポロ計画のために採用された最初のプログラマー — そして初の女性プログラマー — として、MIT計測機器ラボ (Instrumentation Laboratory、後のチャールズ・スターク・ドレイパー研究所 [Charles Stark Draper Laboratory]) に加わった。彼女はソフトウェア工学部門のディレクターに昇進し、司令船 (Command Module) と月着陸船 (Lunar Module) の両方におけるアポロ誘導コンピュータの船内フライトソフトウェアを担当し、その後はスカイラブ (Skylab) システムを担当した。これは二度目のチャンスがないコードであった。パッチもなく、降下軌道上で再起動もできず、パッドを離れた機械にアクセスする方法もなかった。

1202

ハミルトンの答えは、エラーを例外としてではなく、設計上の前提として扱うことであった。彼女のソフトウェアにはエラー検出および復帰ルーチンが含まれており、決定的なものとして「優先度表示」スキームがあった。コンピュータが過負荷状態になると、優先度の低いタスクを放棄し、着陸に必要な機能を維持するというものだ。彼女はまた、ループの人間側についても考慮し、優先度表示を見た宇宙飛行士がソフトウェアの処理遅延を考慮して5つ数えるように手順を設計していた。

無料テスト
あなたはどのくらい?

20問、8分の制限時間、そして受験者全員と比べたパーセンタイル。登録不要。

IQテストを受ける →

1969年7月20日、メカニズムは設計通りに正確に作動した。警報が鳴り響き、コンピュータは失っても構わないものを破棄し、NASAミッションコントロールのコンピュータエンジニアであるジャック・ガーマン (Jack Garman) がコードを認識して「行け、行け!(Go, go!)」と叫んだ。イーグル (Eagle) は着陸した。

学問分野の命名

ハミルトンは、アポロ計画の初期に「ソフトウェア工学 (software engineering)」という言葉を定着させた功績が認められている。彼女の目的は説明的であると同時に権限的なものであった。「ハードウェアや他の種類の工学と区別するために、しかし各タイプの工学を総合的なシステム工学プロセスの不可欠な一部として扱うために、私は『ソフトウェア工学』という言葉を使い始めました」と彼女は説明した。ハードウェアの関係者らは感銘を受けなかった。「それは長い間、絶え間ないジョークでした」と彼女は回想している。「彼らは私のラディカルなアイデアについてからかうのが好きだったのです。」そのジョークは今や、数千万人の人々を雇用する産業の名前となっている。

事実より前の開発

彼女はキャリアの残りの時間をその含意の追求に費やした。1976年、アポロが彼女に教え込んだエラー防止手法を形式化するために、セイドーン・ゼルディン (Saydean Zeldin) と共にハイアー・オーダー・ソフトウェア (Higher Order Software) を共同設立した。彼らの製品であるUSE.ITは、スペースシャトル (Space Shuttle) や空軍のICAMプロジェクトを含む政府プログラムを支援した。1986年3月、マサチューセッツ州ケンブリッジにハミルトン・テクノロジーズ (Hamilton Technologies) を設立し、「事実より前の開発 (development before the fact)」と呼んだパラダイム、すなわちテスト中にエラーを探すのではなく、設計の時点でエラーを不可能にすべきだという主張を中心に、ユニバーサル・システムズ・言語 (Universal Systems Language) と001ツールスイートを開発した。

称賛はゆっくりと、そして一斉に訪れた。1986年のオーガスタ・エイダ・ラブレス賞 (Augusta Ada Lovelace Award)、2003年には同庁の歴史上で最大の個人賞である37,200ドルのNASA特別宇宙法賞 (NASA Exceptional Space Act Award)、2016年にバラク・オバマ (Barack Obama) からの大統領自由勲章 (Presidential Medal of Freedom)、2017年のコンピュータ歴史博物館フェロー賞 (Computer History Museum Fellow Award)、2019年のワシントン賞 (Washington Award)、そして2022年の全米航空殿堂 (National Aviation Hall of Fame) 入りである。

なぜマーガレットは天才と呼ばれるのか

この能力は、彼女の分野が考えていた方法の具体的な逆転である。1960年代、ソフトウェアは動くべき命令として理解されており、エラーは後で見つけられるべき遺憾なインシデントとして扱われていた。ハミルトンは失敗を主要な設計対象として扱った。その基盤となる前提が崩れたとき、システムはどうすべきか?優先度表示はその精神の最も明確な成果物である。それは過負荷を防ぐのではなく(過負荷を防ぐことはできない)、誰もまだ経験したことのない条件下で、最も重要なことをやり続けるために、機械が何を喜んで手放すべきかを事前に決定する。それは技術的な動きであると同時に哲学的な動きである。彼女の2つ目の主張は概念的な著作権である。「ソフトウェア工学」と名付けたことで、それを嘲笑されながらも、プロファイル全体が自分自身をどのように理解しているかを再編成したのである。

誠実な評価は以下の通りである。彼女の栄誉の記録は広範囲に及ぶが、「天才」という言葉が公式に適用されているわけではなく、結果に対するメダルが示されている。アポロ11号の救出は単独の行為ではなくシステムであった — 彼女のソフトウェアが警報を発したが、ジャック・ガーマンがコードを認識しねばならず、フライトコントローラーがゴーと言わねばならず、設計は宇宙飛行士が人間の手順に従うことに依存していた。そして業界は彼女の方法よりも彼女の言葉をより完全に採用した。「ソフトウェア工学」は普遍的である一方、「事実より前の開発」は専門的なままである。彼女の天才性は、彼女がそれを解決するために構築したすべてのツールよりも長生きしている問題の枠組みの中に最もよく見出すことができる。

遺産

彼女が指揮したコードこそが、「1202アラーム」というフレーズがエピタフ(墓碑銘)ではなく勝利である理由である。より大きな遺産は、ソフトウェアとは工学的に作られ、公差に収められ、優雅に失敗するように期待されるものであるという前提であり、それは今や目に見えないほど標準的なものとなっている。彼女は名前とその最初の偉大な証明の両方を提供した。

偉人と比較

Erwin Schr Dinger vs PythagorasAdam Smith vs Garry KasparovClaude Monet vs Edgar Allan PoeJohn Von Neumann vs Stephen Hawking
IQランキングを見る →すべての比較 →

神童

Momiji NishiyaMomiji NishiyaFirst Olympic women's street champion, winning gold at age 13Emily BearEmily BearPlayed the White House at six, won a Grammy at twenty, scored a…Summer McintoshOlympic finalist at 14, world-record holder and triple Olympic…Laurent SimonsGraduated University at 11 — Belgian Prodigy with Electrical…
神童 →

遊んで、また明日

毎日の天才チャレンジ · Brain teaser
A farmer has 17 sheep. All but 9 run away. How many are left?
答えをタップ ↓
あなたはどの天才? 無料IQテスト