エリック・オールマン

エリック・オールマン:電子メールの配管工

地球上で送受信されるほぼすべての電子メールが、バークレー校の大学院生1人が書いたプログラムを通過していた時期が約20年間あった。エリック・オールマン(Eric Allman)は電子メールを設計したわけではなく、それを主張したこともない。彼はその根底にある、より退屈で困難な問題、つまり互いに話したこともない人々が構築した互換性のないメールシステム間で、メッセージを損失なく送受信させるという問題を解決した。2025年にAssociation for Computing Machinery(ACM)が彼をフェローに選出した際、その推薦文は「電子メールの開発」というわずか4語であった。

バークレーでの幼少期

エリック・ポール・オールマン(Eric Paul Allman)は1955年9月2日、カリフォルニア州エルセリートで生まれた。彼の人生を決定づけることになる大学から湾を挟んで数マイルの場所である。彼は高校のメインフレーム、そしてカリフォルニア大学バークレー校(UC Berkeley)の計算センターへと早期に道を見出した。Unixがアメリカのコンピュータ科学部門に広がっていた1973年にバークレー校に入学し、1977年に学士号、1980年に修士号を取得した。

彼はその軌道を決して離れなかった。オールマンは現在もバークレーに住んでおり、彼の最も永続的な仕事は、彼が育った場所から数ブロック以内の場所で行われた。

誰も望まなかった問題

1970年代後半までに電子メールは存在していたが、単一のシステムとしてではなかった。それは互換性のない複数のものとして同時に存在していた。ARPANETにはその慣習があり、ローカルのUnixネットワークには別の慣習があった。アドレスの書き方、ヘッダーに何を含めるべきか、どのプロトコルでメッセージを運ぶべきかについて、異なるシステム間で意見が一致していなかった。あるネットワークのユーザーが別のネットワークのユーザーに書き込もうとしても、実際にはうまくいかなかった。

オールマンの最初の答えはdelivermailだった。1981年までにたどり着いた2番目の答えがsendmailであり、両者の違いが彼の貢献のすべてである。sendmailはメールシステムではなかった。それはメール転送エージェント(Mail Transfer Agent)であり、メールシステム間に位置し、どのような形式で到着したメッセージでも受け入れ、次にどこへ行くべきかを判断し、次のホップが要求する形式にアドレスとヘッダーを書き換えるルーター兼翻訳者だった。それはSMTP、後のESMTP、そしてDECnetのMail-11を話した。

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

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

IQテストを受ける →

重要な設計上の決定は、これらの翻訳がハードコードされていないことだった。sendmailの動作は書き換えルール(rewriting rules)によって駆動された。これは、アドレスを別の形式に変換する方法を記述した設定ファイル内に保持される、小さく高密度なパターンマッチング言語である。オールマンはポリシーではなくメカニズムを構築した。40年間にわたって継続的に電子メールが変化したとき、sendmailそのものを書き換える必要はなく、ルールを変更するだけでよかった。

これが、sendmailがBerkeley Software Distribution(BSD)の一部となり、事実上すべてのUnixシステムのデフォルトのメール転送エージェントとなった理由であり、またその設定ファイルがシステム管理者の間で伝説的である理由でもある。このソフトウェアの控えめな説明でさえ、ある程度複雑な設定構文であることを認めている。力と苦痛は全く同じ場所から来ていた。

Syslog

sendmailの内部には、最初の発明よりも広く普及し、より多くの領域を征服した第2の発明が埋もれていた。オールマンは、プログラムが行っていることを一貫して記録する方法を必要としていたため、syslogというログ機能を作成した。当初はsendmail専用だった。現在では、Internet Hall of Fameの言葉を借りれば、ほぼすべてのオープンシステムや周辺機器で使用される事実上の標準ロギングメカニズムとなっている。これは、サーバー、ルーター、プリンターで何かイベントが発生したときに書き出される行である。2001年にRFC 3164として明文化されるまで20年間非公式に標準化されており、後にRFC 5424に置き換えられた。

オールマンによる2つの小さな断片も日常的に使用されている。BSDスタイルとも呼ばれるオールマン・インデントスタイルは、Cプログラマが波括弧を配置する2つの方法のうちの1つである。また、Linuxのbsdgamesパッケージに今も同梱されているBSD Trekは、Fortran版Star Trekゲームを彼がCに移植したものである。

会社

オールマンはデータベース企業のBritton Lee(後のSharebase)および国際コンピュータ科学研究所(International Computer Science Institute)で働いた。1998年、彼とグレッグ・オルソンはカリフォルニア州エメリービルにSendmail, Inc.を設立し、オープンソース版と並行して商用ソフトウェアを開発した。同社は最終的にProofpointに買収された。彼がその時期に追加したアーキテクチャであるmilterは、サードパーティがメールパスにフィルタをプラグインできるようにした。これは、スパムやウイルスフィルタリングが後に世界のメールサーバーに組み込まれることになったフックである。オールマンは、今後の電子メールの進化の大部分は、転送エージェントそのものではなく、milterで起こると予想していると述べている。

彼はまた、ACM Queueの創設を支援した。これは実務者が読まない学術雑誌と、広告主に左右される業界誌との間のギャップに意図的に配置されたもので、USENIXでの指導的役割を経て、その編集委員会およびACM評議会に席を置いた。ブライアン・コスタレスと共にO'Reillyの書籍『Sendmail』を共著し、『The Architecture of Open Source Applications』に寄稿し、その後バークレーのSwarm Labで分散コンピューティングとモノのインターネット(IoT)プラットフォームに取り組んだ。

エリックが天才と呼ばれる理由

示された資質は理論的な輝きではなく、オールマン自身もそう主張したことはない。それは不確実性下での設計判断、つまり互換性のないシステムの混乱を見て、どの部分が変化し続け、どの部分がそうではないかを正しく特定し、変化する部分を構成ファイルとして、安定した部分をコードとして構築する能力である。sendmailの書き換えルールは、電子メールのアドレッシング慣習が何十年も不安定なままであるという賭けだった。その賭けは正しく、1981年に大学院生が書いたプログラムが30年後も世界のメールの大部分を運んでいた理由である。それは稀なエンジニアリングの先見の明であり、その功績がそれを反映している。2014年にInternet Hall of Fameが彼をイノベーターとして殿堂入りさせ、2009年にACMがDistinguished Engineer、2025年にフェローに選出し、2013年にはバークレー校がコンピュータサイエンスのDistinguished Alumnus(傑出した卒業生)に指名した。

反論も公平であり、明確に述べる価値がある。オールマンはいかなるアルゴリズムも発明せず、定理を証明せず、プロトコルを創設しなかった。電子メール、SMTP、ARPANETは他者の仕事である。彼の天才性があると言えるならば、それはクラフトマンシップ(職人気質)である。接触するすべての人々と共存しなければならないインフラを構築する者の実践的な知性だ。そしてそのクラフトマンシップには現実のコストがあった。sendmailの設定言語は悪名高く罰ゲームのようであり、何世代もの管理者が不満を述べ、その後継となるライバルのメール転送エージェントが書かれる動機となった。専門家だけが安全に操作できるツールは、どれほど耐久性があっても、設計上の妥協品である。オールマン自身のプログラマへのアドバイスは、典型的に華やかさがない。「自分の性格に合ったプロジェクトを選び、クリーンで十分に文書化されたコードを書け。なぜなら、自分の評判がそこに懸かっているからだ」。

レガシー

オールマンは同性愛者であり、30年以上連れ添った後、2013年10月にBSD Unixの主要開発者であるマーシャル・カーク・マキュージック(Marshall Kirk McKusick)と結婚した。彼らは大学院で出会い、Unixをインターネットのオペレーティングシステムにしたソフトウェアの驚くべき割合を彼らが担っている。彼の受賞歴には、2006年のTelluride Tech Festival Award of Technologyがある。しかし、彼の業績を測る最良の尺度は、それが目に見えないことである。誰もメール転送エージェントのことを考えず、何かが壊れるまでsyslogの行を読む人もいない。それこそが、インフラストラクチャが達成すべき条件そのものである。

偉人と比較

Max Planck vs Werner HeisenbergAdam Smith vs Thomas AquinasBlaise Pascal vs Steve JobsGottfried Wilhelm Leibniz vs John Von Neumann
IQランキングを見る →すべての比較 →

神童

Umi GarrettUmi GarrettWent viral playing Liszt on Ellen at eight, then won a Chopin…Maddie ZieglerMaddie ZieglerSia's 'Chandelier' Music Video at Age 11 — Two Billion YouTube…Daniel TammetDaniel TammetRecited pi from memory to 22,514 digits in just over five hoursShirley TempleShirley TempleHollywood's number-one box-office star as a child, later a U.S.…
神童 →

遊んで、また明日

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