
エンジニアの遊び心
昔から、エンジニア(プログラマ)には、ちょっとした遊び心を持っている人が多くいます。
仕様書や規格など、お堅いモノゴトが多い世界ですが、そういう遊び心に出会うと、ついクスッときてしまいます。
今日お話するのは、以前出会った、ちょっとしアメリカン(?)ジョークです。
私は、C# というプログラム言語で使用される、「MimeKit」という電子メール操作用のライブラリ(プログラムが使うプログラムのこと)について調査していました。
専門知識のある方は、実際のページもぜひご覧ください。
GitHub のリポジトリですが、下の方に MimeKit の使い方が説明されています。
私が知りたかったのは、Attachment、つまり添付ファイルの設定方法でしたので、目的のドキュメントはこちらにありました。
- MimeKit 添付ファイルの作り方セクション
- https://github.com/jstedfast/MimeKit#creating-a-message-with-attachments
そこに書かれている内容でおおよそ概要は掴めたので、後は細かい仕様を確認してプログラムを書けばいいかなーと思っていました。
で、終わりまでスクロールしていったとき、次の項目のタイトルが目に入りました。
- "Creating a Message Using a BodyBuilder (not Arnold Schwarzenegger)"
- https://github.com/jstedfast/MimeKit#creating-a-message-using-a-bodybuilder-not-arnold-schwarzenegger
思わず、フフッと笑ってしまいました。
日本語の語順にすると面白さが減ってしまうのですが、あえて訳すと、次のような感じになります。
『ボディビルダーを利用したメッセージの作成(アーノルド・シュワルツネッガーではない)』
非常にお堅い説明を読み進めていたのに、突然シュワちゃんが出てきたら、そりゃあ笑みもこぼれます。
もっとも、多少プログラムの知識がないと、英語のままであっても、このジョークは今一つだと思います。
このジョークが面白いのは、「ボディビルダー」という名称が、ごく自然な呼び方である点にあります。
まず、メールの本文のことを、技術的には「ボディ」と呼びます。
また、何かを組み立てるプログラム(関数)は、よく「ビルダー」と呼ばれます。
つまり、メール本文を組み立てるプログラム(関数)があれば、それは自然と「ボディビルダー」という名称になります。
なので、"a BodyBuilder" まで読んだ段階では、まったくもって自然なお堅い文章なのです。
それが突然、"(not Arnold Schwarzenegger)" と続くわけです。
たぶん、MimeKit の制作者さんも、自分で名前を付けた時に思ったのでしょう。
『コイツの名前はボディビルダーだ。……シュワちゃんか?』
頭脳労働をされている方なら分かると思いますが、たまに自分でもおかしな思考になることがあります。
なので、つい "(not Arnold Schwarzenegger)" とつけてしまった気持ちは、私にもよくわかります。
もちろん、本文はちゃんとした説明です。
本質的な部分では、とても真面目に書いてあります。
ですが、今回のように(良い意味で)しょーもないコメントをつけたり、サンプルコードの変数名で遊んだりと、本質的に影響のない部分で不意に仕掛けてきます。
『まあ、そう堅くなるな。もっとイージーに行こうぜ』
そう諭されているようで、気分も晴れやかになり、思考の柔軟性も生まれます。
まあ、仕掛ける方としては、結構勇気がいるものですけども。
それでは、ボディではなくヘッドをビルドする、山本慎一郎でした。