ちょっとひと言

冷たい鉄と熱いシリコンに誓って

David Platt

 

David Platt私は 6 歳のころ、父親の医大の卒業式に出席したことを今でも覚えています。父は、目を輝かせながら「ヒポクラテスの誓い」について説明してくれました。「私たちは、学んだことを、だれかを傷つけるためではなく、癒すためだけに活かすことを誓ったんだ」。彼は興奮して、息を切らせながら途切れ途切れに話していたはずですが、これは半世紀もの年月が流れたゆえに加わった記憶かもしれません。

それから 18 年が経ち、私は自分の卒業式を、セイヤー工科大学院のクラスメイトと共にダートマス大学で迎えました (雨が降っていたので、式はホッケーのリンクで行われました)。そして、医大生が「医神アポロンの下に...」と誓うように、友人のフラスコを共有しました。というのも、我々は単なるエンジニアで、ヒポクラテスの誓いのような立派な儀式がないからです。

私たちエンジニアの責任は、ソフトウェア産業の幕開けの頃、おそらくは父が誓いを立てた当時の 50 年ほど前から、急激に大きくなりました。ジャンボ ジェット機向けのソフトウェアを開発するエンジニアは、ある日の午後、医者 1 人が人生で担うよりも多くの人々の命を握っていることになります。今こそ、このことについて、広く知られるべきです。

私は、どのプロフェッショナルの社会にもあるであろう、空っぽな「倫理規定」について言及しているのではありません。このような倫理規定は、Web サイトのプライバシー ポリシーと同じ程度の意味と力しか備えていません。私が必要だと論じているのは、仲間や愛する人の目の前で、公に行う、名誉をかけた個人の誓いです。

このようなエンジニアのための誓いは、実は既に存在していました。1922 年にカナダで生まれた「Ritual of the Calling of an Engineer」(エンジニアという名称を得るための儀式、bit.ly/8XwJiQ、英語) です。誓いを書いたのは Rudyard Kipling という小説家兼詩人で、彼は「McAndrew's Hymn」(McAndrew の賛美歌、bit.ly/htBITe、英語) という詩の傑作からも明らかなように、エンジニアの熱狂的ファンでした。この儀式の参加者は、この世にいないギリシャの神ではなく、「名誉と冷たい鉄の下に」誓います。これからエンジニアになる人々は、鋼の指輪を授与され、外部へのシンボル、および自分への戒めとして利き手の小指にこの指輪を付けます。あまり普及していませんが、「Order of the Engineer」(エンジニアの道理、bit.ly/14g7Pn、英語) という米国版の儀式もあります。この儀式は、こんな言葉で始まります。「私はエンジニアであり、自分の仕事に深い誇りを持ち、ここに厳粛な義務を負う」。

スタートラインとしては良いのですが、これらのルーツは、おそらく 5,000 年前の最初のエンジニアである鍛冶屋までさかのぼるので、現代のソフトウェア エンジニアリングには当てはまりません。現在、エンジニアが直面している課題は、時間、コスト、安全をはかりにかけるという問題の定義と分析です。反面、我々エンジニアは、足元に落とすと怪我をするような、有形のものは生み出しません。私たちが作り出す完成品は、1 と 0 が連なった 2 進数で、それ以上でもそれ以下でもありません。そのため、エンジニアの儀式には、完成品が持つ「無形」という性質を反映する必要があります。

では、エンジニアは何に向かって誓えばよいのでしょう。医者のように、この世にはいないギリシャの神に誓うなら、コンピューターおたくの先駆者、ピタゴラスはいかがでしょう。ピタゴラスの定理や、それよりもさらに重要な数学的証明の概念は、ヒポクラテスが痛み止めに処方したという柳の樹脂よりもずっと長く、数千年も持ちこたえています。ピタゴラスがあまりに西洋的で古すぎると思われるなら、私たちの作る完成品について言及するのはどうでしょう。たとえば、このようになるでしょうか。「聖なる 1 と 0 の下に、私たちは誓う...」。

エンジニアの職業を示すためには、何を身に纏えばよいでしょう。指輪はすぐに目に付きますが、めったに使わない指でも数グラム重くなるだけで、キーボードとマウスを多用する身にはこたえます。ピアスという手もありますが、付ける場所を思いつきません。では、バーコードや QR コードのタトゥーはいかがでしょう。どのタトゥーにも、宣誓者の一意 GUID が刻まれます。これは、証明機関の公開暗号キーで解読でき、「正規品」であることがわかります。雇用主となる人はだれでも、スマートフォンのアプリを使ってチェックできます。

と、このように問題を提起してみたわけですが、皆さんのご意見も伺いたいと思います。エンジニアの誓いとして最もふさわしいアイデアを選ばせていただきます。条項は 8 条 (当然、2 のべき乗) でお願いします。何を行い、何をしないと誓いますか。MSDN マガジンの電子メール アドレス、mmeditor@microsoft.com (英語のみ) までご意見をお寄せください。ただし、「喉が渇かない限り、ランチにお酒を飲まない」などという誓いは、なしですよ。

David S. Platt は、ハーバード大学の公開講座や世界中の会社で .NET のプログラミングの講師をしています。『Why Software Sucks...and What You Can Do About It』(Addison-Wesley Professional、2006 年) や『Microsoft .NET テクノロジ ガイド』(日経BPソフトプレス、2001 年) などの、11 冊のプログラミング関連の書籍の著者でもあります。2002 年には、マイクロソフトから Software Legend に指名されました。David は、8 進法で数える方法を学べるように、娘の 2 本の指をテープで留めるかどうか悩んでいるところです。連絡先は rollthunder.com (英語) です。