2006年11月20日
高林哲、鵜飼文敏、佐藤祐介、浜地慎一郎、首藤一幸『Binary Hacks ─ ハッカー秘伝のテクニック100選』(オライリー・ジャパン)
川合史朗さんによる「本書に寄せて」が感動的な文章だったので購入しようとしたら、著者の高林哲さんから献本の申し出があった。いろいろな意味でとても驚いたが、ありがたいことである。
本書についての情報はサポートページを見ていただきたいが、元はと言えばBinary 2.0カンファレンス2005という、川合さんの言葉を借りれば「流行のWeb 2.0や軽量言語のフォーマットで低レベル技術を語る、というミスマッチを楽しむジョーク企画」に端を発するものである。
当方は「流行のWeb 2.0や軽量言語」よりは低い層を扱うことが多いが、アセンブラの話が出てくると途端に目が泳いでしまう程度の人間である。本書を読む前にバイナリアン度チェックを行ったところ、Q.7までは大丈夫だが、それより後がボロボロだったと書けば、大体のレベルは分かっていただけるだろう。
発売まもなく第三刷に達したと聞くが、本書の成功は Binary 2.0 カンファレンスを立ち上げたユーモア感覚をうまく販促に活かせたこと、そして低レベル言語を学んでおらず、低レベル技術を理解できないことに対する若いソフトウェア技術者の不安をうまくすくい上げたことによるものだろう。いずれにしても、見事にスパルタンな内容を多くの人に届けた功績は大きい。
……などと偉そうに書いてみたが、ワタシ自身なじみのあるコマンドを扱う2章まではよいとして、事前の予想通り3章にして頭を抱える事態に陥った。gcc、並びに C/C++ 言語に対する理解が足らないなぁと悲しくもなった。
Binary 2.0カンファレンス2005ではトリッキーな内容の発表もあったようだが、本書の内容はオーソドックスで、奇を衒ったものではない。4章の「セキュアプログラミングHack」など基本的かつ実践的な話だし。
前も書いたが、ワタシの場合、こうした低レベル技術はきつい仕事の記憶とセットになっているきらいがある。自分が思ったように(というか思い込み通りに)プログラムが動いてくれないとき、どうにも動作のタイミングが合ってくれないとき、抽象化の漏れの中を覗いてみるしかない局面が必ずある。必ずあると分かっているのに、どうしても横着してしまう。それに対し好奇心と技術を心底楽しむ姿勢を貫けるのがハッカーとの違いなのだと思いいたるわけだ。
あと一点本書について秀逸だと思ったのは、碁盤をあしらった表紙デザインである。これならそのまま海外にも持っていけるだろう。高林さんをはじめとして著者陣は本書が英訳されることを希望している。本書がオライリー本家に輸出される日が来ればと思う。