歴史物語

この妥協のない数学者はプログラミングに革命をもたらした

コンピューターのパイオニア、アメリカ海軍少将、イェール大学初の女性博士号。彼女はプログラミングに革命をもたらし、コンピューター サイエンスの語彙に「バグ」という言葉を広めました。

マーク I は、現代の言葉の意味でのコンピューターというよりも、チャールズ バベッジの機械式機械に似ていました。スチール製のケース内では、4 馬力のモーターで駆動される回転するプロペラ シャフトが、全長に沿って作動する一連のトランスミッションとタイマーを作動させていました。デバイス。 Mark I のコードは標準化されたコーディング用紙に鉛筆で手書きされました そしてそれを、文字通りノックアウトすることによって、ピアノのリボンやジャカード織機の穴あきカードに似た幅 3 インチのテープのスプールに転写しました。

1 週間で獣を飼いならす

独自の 8 ビット コードを使用したテープ上の穴の位置は、特定の計算の桁、プロセス、およびアプリケーションに対応していました。 Mark I は、パンチの入ったテープのロールを受け入れるという意味ではプログラム可能でしたが、当時、ハードウェアとソフトウェアの区別は、ないにしても曖昧でした。各計算には、スイッチを切り替えたり、ケーブルを再配線したりする必要がありました。

この妥協のない数学者はプログラミングに革命をもたらした

この記事は、書籍「 インターネットの開拓者 」からの抜粋です。 市場にリリースされたばかりです

ハワード・エイケンはグレースを残りの乗組員に紹介した。彼女が士官候補生学校に在学中にハーバード大学に来た2人の海軍少尉である。その後、彼女は、一方が新入社員の隣に座ることを避けるためにもう一方に賄賂を渡していたことを知りました。 「彼らは、白髪の老教師が来ると確信していて、二人とも隣の机を占拠したくありませんでした。」 強い> 。エイケンは彼女にコードブック、数ページの理解できないコマンド、そして、逆正接の補間係数を小数点以下 23 桁まで計算する Mark I 用のプログラムを書くという課題を与えました。 「そして彼は、1 週間の猶予があると言った。 この獣のプログラミングとプログラムの実行方法を学ぶのに 1 週​​間」 と彼女は言いました。 。グレースにとってその仕事自体は特に難しいものではありませんでした。彼女は数学の博士号を持っていました。その機械は彼女には理解できませんでした。マーク I はその種の最初のものであったため、彼女には指示も使用前例もありませんでした。グレースは多くのことができましたが、エンジニアリングの知識がなく、スイッチとリレーを区別することができませんでした。エイケンは彼女をチェックしていました。

「ワイヤード」ボス

もともと独学だった彼女は、この挑戦​​に取り組みました。彼女はコードブックを熟読し、2人の少尉、主に23歳のリチャード・ブロック、ハーバード大学の新入生で彼女の側近となる数学の専門家に質問した。また、IBM のエンジニアも研究室の周りをうろうろして障害を修正していました。彼女は彼らから考えられるすべての情報も抽出しました。彼女は夜遅くまで座って、マーク I の設計図と配線図を調べて機械の構造を調べようとしました。 彼女は時々自分の机で寝ていました 。数年後、グレースがコンピュータ プログラミングという新しい分野ですでに有名な人物になっていたとき、彼女は常に最も難しいタスクを最も若くて経験の浅いチーム メンバーに与えていました。彼女は彼らは何が不可能なのかまだわかっていないと結論付けました。

ハーバード大学での最初の年は休みなく働き、新しいプログラマーがチームに加わる中、グレースは軍の階級を追求し続けました。生徒たちを教えるのと同じ勤勉さと創意工夫で、彼女はチームの貴重なメンバーになりました。ニューヨーク州北部の白髪の教師は、著名な数学者、エンジニア、そしてコンピューター サイエンスのミクロの世界の事実上すべての人に会いました。 「それは魅力的でした」と彼女は言いました、「アイデア、コンセプト、夢、そして太陽の下にあるすべてのものの温床でした。」計算需要が非常に大きかったため、エイケンは 2 台目のコンピューターである Mark II を設計しました。グレースもそれを学びました。

彼の機械と同様に、エイケン自体にもマニュアルがありませんでした。彼は爆発力があり、繊細で、細部にこだわる人でした。彼は自分の発明に取り組むチームを率いることをとても誇りに思っていました。マークIはIBMによって製造され、名門大学の地下に隠されていたが、 まるで海軍施設を運営するかのようにエイケンは彼の世話をした。 彼は規律に厳しかった。部下は全員正服を着て出勤し、彼を「中佐」と呼ぶことになった。女性型コンピューターは海軍艦艇と呼ばれていました。エイケンは仕事で人々を苦しめました - 彼が間違いを犯したとき、彼は犯人に向かって「怒鳴りつけました」。

この妥協のない数学者はプログラミングに革命をもたらした

グレース・ホッパー、1952 年

批判は非常に激しく激しいものであったため、グレースさんは平静を保つために時間外にトラブルシューティングを行うことがよくありました。しかし、彼女は上司を一種の機械として見るようになりました。 「そのように仕組まれているのよ」と彼女はブロック氏に語った。ブロック氏はしばしば監督に恋をした。 「エイケンとその仕組みを理解している人がいたら、彼と仕事ができて本当に良かったです。何も難しいことはありませんでした。しかし、誰かが彼に何をすべきかを教えようとした場合、彼を救うことができるのは神だけです。 " 軍の階層に対するエイケンのアプローチは困難でしたが、最終的にはそれがグレースにとって良い結果となった - 彼の計算研究所での待遇は、性別ではなく、主に階級と能力に応じたものでした。 制服と役職が失踪の一因となった伝統的な社会的役割の廃止、 実験室の外界からの完全な隔離も同様です。 。エイケンは自分の階級に女性士官を決して望んでいなかったが、儀礼を守っていたため、猶予を与えることを受け入れざるを得なかった。そしてグレースがハワード・エイケンに言ったように、研究室には女性が必要だろう。彼女は正しかった。

グレース - 「平等な男」

彼女は最終的にエイケンの右腕となり、すぐにマーク I の全責任を負うことになりました。彼女は戦争中に最も困難な数学の問題のいくつかを解決するコードを書き、そのコンピューターのマニュアルである 500 ページの詳細な文書も作成しました。回路図やオペレーションコードも満載。彼女は同僚のリチャード・ブロックとともに、エンコードおよびバッチ処理システムを開発しました。これにより、研究所は当時最も効率的なデータセンターとなり、能力の低い将校の能力を超えた過酷な戦争環境で秩序を維持しました。そして、グレースの中核となる資質に加えて、 チームに女性がいることは重要な利点 をもたらしました。 。マーク1世に機械的な問題があったとき、グレースは時々「ハンドバッグから鏡を取り出して、カメラの前に貼り付けて火花を探した」ことがありました。

プロとしてのキャリアの終わり頃、エイケンは同僚に簡単な評価を与えたが、彼の口では「グレースは平等な客人だった」という最高の栄誉であった。潜水艦と同様に、マーク I は 8 時間の交替勤務員によって 24 時間体制で管理され、コンピュータ自体は戦時中なんと 95% の時間稼働していました。戦争計算の要求は続き、紛争のあらゆる前線から緊急の要求がコンピューティング研究所に届きました。常に貪欲に学習し、ヴァッサーで可能なあらゆる活動に参加していたグレースは、仕事に取り掛かりました。 複雑な海洋学、機雷漁、近接信管、弾道のタスクを単純な算術ステップに変換する方法を学びました 、無秩序で暴力的な世界に厳しく管理された秩序を導入します。

Mark I の計算は、コードの欠陥、リレーの欠陥、不気味なブザー音、チャタリング、揺れによって通知されるダウンタイムなど、あらゆる種類の障害にさらされました。これを防ぐために、エイケンのチームはしばしば夜遅くまで働きました。 1945 年 9 月のある晩、大きな蛾が機械の光に誘われて開いた窓から飛んできました。その後すぐに、グレースさんはリレーの 1 つで鉄製のアーマチュアに押しつぶされた自分の死骸を発見しました。 彼女は、「本物のワームの最初の症例」という言葉を添えて日記に記録しました。 。ただのバグ、バグ、または英語のバグは、19 世紀にまで遡る専門用語です。すでにトーマス・エジソンはそれを機械的障害、「小さな欠陥と困難」と呼んでいました。グレースは研究室で小さな欠陥で有名でした。実験室でめちゃくちゃになった黒板に虫や怪物が走り書きした。ドラゴンは穴を開けたテープに穴をあけ、「妖精は長い鼻を持っていて、それを使って壊れた円を拾い上げてテープに押し込んだ」。蛾の事件の後、彼女は市内でプラスチック製のトコジラミの入った箱を購入し、コンピューターの後ろに冗談のために並べて置き、2日間のパニックを引き起こした。

戦時中、計算研究所は世界中の他のいくつかの IT プロジェクトから孤立しており、毎日の計算に取り組んでいたグレース ホッパーには、自分の分野で何が起こっているのかを調べる時間も機会もありませんでした。しかし、分野の代表者が彼女の家に現れることもありました。物理学者のジョン・フォン・ノイマンが研究室を訪問したとき、グレースはハーバード大学でわずか数か月働いていました。

フォン・ノイマンは自由に動くことができました。彼は 1944 年のほとんどを米国のさまざまなコンピューティング プロジェクトを訪問して過ごし、複雑な偏微分方程式を処理するのに十分強力なマシンを探していました。 Mark I は彼が初めて出会った大型コンピュータでした そしてその夏の3か月間、彼はハーバード大学の会議室に合宿し、リチャード・ブロックがコンピューターで業務をセットアップしている間、黒板に課題を書きました。

グレースはまだ研究室には新人ですが、微分方程式に熟達しており、あらゆる段階で手助けしてくれました。グレースもリチャードも、自分たちが解いている問題の応用については知りませんでした。彼らは、数学の興味深い課題としてのみ興味を持っていました。そしてフォン・ノイマンは風変わりな人物でした - このおしゃべりなハンガリーの理論家は当時、プリンストン大学の同僚アルバート・アインシュタインと同じくらい有名でした。 ブロッホとフォン・ノイマンは課題に取り組んでいる間、会議室とコンピューターの間を行ったり来たりしました。マーク1世が数字を吐き出すと、物理学者はその数字を叫んだ。グレースが賞賛したように、「100回中99回」、「最高の正確さ、これは並外れたものだ」と。

この妥協のない数学者はプログラミングに革命をもたらした

この記事は、書籍「 インターネットの開拓者 」からの抜粋です。 市場にリリースされたばかりです

3 か月後、フォン ノイマンはこれらの結果をニューメキシコ州ロス アラモスの砂漠の町に持ち帰り、そこでマンハッタン計画について相談しました。この偏微分方程式は、原子爆弾の爆縮過程の数学的モデルであることが判明しました。 長崎と広島に原爆が投下されるまで、グレースさんは自分が正確に何を計算するのに役立ったかを知りませんでした。グレースには、計算結果がどこに行くのか、そしてそれがどのような目的に役立つのかを考える時間が常にあるわけではありませんでした。計算は絶えず流入しており、フォン・ノイマンで行われたように、ほとんど想像を絶するほど複雑なものもありました。

効率的な開発者

処理時間を節約するために、グレースとリチャードは、今日でもコードが記述される方法の基礎を築いたコーディング構文と回避策を発明しました。グレースは 1944 年の時点で、サブルーチンと呼ばれるようになったコードの断片を再利用することで、新しいタスクごとにコードを書き直す必要がないことに気づきました。戦時中は非公式に行われていました。コーダー、つまりチームのプログラマーがノートを共有し、関連する断片を手作業でコピーしていました。 最終的に、この習慣は正式なものとなり、将来のコンピューターはすでにサブルーチン ライブラリを備えて構築されており、初心者のプログラマでもパッケージ化された命令シーケンスの恩恵を受けることができるようになりました。

グレースさんのコードが理解しにくくなったとき、彼女はメインコードに注釈を付けてコンテキストを説明し、数式を追加しました。これにより、同僚が仕事を理解しやすくなりました。 strong> - 優れたコードは常に文書化されます。

この妥協のない数学者はプログラミングに革命をもたらした

グレース・ホッパー 1986 年、少将の階級で退役

これはグレースの名刺であり、コンピューター プログラミングの技術を簡素化し、よりアクセスしやすくしました。戦前でさえ、彼女がヴァッサールで教えていたとき、 彼女は生徒たちに数学の問題についてエッセイを書かせていました、なぜなら数学を学んでも誰かに伝えられなければ意味がないからです。 。彼女は民間の世界に戻り、最初の商業 IT 企業に入社したときも、この論理に従い続けました。プログラミングの新興分野に対するグレースの最も永続的な貢献は、彼女の民主化です。彼女は、人々がコンピューターと通信する方法を根本的に変えるプログラミングの進歩を追求してきました。その助けを借りれば、高度な数学用語や 1 と 0 さえも必要なくなります。彼らに必要なのは言葉だけだ。

この記事は、ヤゲウォ大学の出版社から発売されたばかりの書籍『Pioneers of the Internet』からの抜粋です。