コード遺産
有名なコードの解剖
Quakeの高速逆平方根・Duffʼs Device・Bitcoinジェネシスブロック・世界初のバグ… 歴史に残るコードを仕組みと逸話ごと解剖する。
解説記事
コード遺産
何のコードか→仕組みの解説→逸話と経緯→遺産と教訓。俗説と事実を分けて。
Appleのgoto failバグ
たった1行の重複したgoto failがTLS証明書検証を丸ごと無効化した経緯を史実に忠実に解剖し、波括弧省略の罠・静的解析・カバレッジという再発防止の勘所を持ち帰れる。
Bitcoinのジェネシスブロック
ブロックチェーンの起点がなぜ改ざんできないのかを、実物のcoinbaseと新聞見出しから解き明かし、データに意思を刻むという設計思想を持ち帰れる。
Duff's Device(ループ展開の妙技)
switch文とループを交差させる衝撃のCイディオムを解剖し、なぜ動くか・ループ展開の本質・可読性と性能の綱引きまで一気に理解でき、言語仕様の隙間を突く発想力が身につく。
Ken Thompsonの信頼するに足る信頼
ソースを全部読んでもバックドアを見抜けない――コンパイラに悪意を自己再生産させるThompsonの古典的攻撃を解剖し、サプライチェーンを疑う目とビルド信頼の限界という実務の勘所を持ち帰れる。
Quake IIIの高速逆平方根(0x5f3759df)
1/√xを割り算も平方根も使わず一撃で近似する伝説のコードを、なぜ動くかまで解剖。IEEE754のビット表現が対数として振る舞う理屈と魔法定数の正体、作者の謎、いまの立ち位置を持ち帰れる。
SQL Slammer(376バイトで世界を止めた)
たった376バイトのコードがなぜ10分で世界のインターネットを飽和させたのか、単一UDPパケットと帯域律速増殖の原理から解き明かし、パッチ運用の重みを持ち帰れる。
Yコンビネータ(不動点コンビネータ)
名前を持たない関数がなぜ自分自身を呼べるのか。Yコンビネータの一行を分解し、再帰と自己参照の正体、正格評価でZが要る理由まで腑に落とせる。
世界初のバグ(本物の蛾)
1947年に本物の蛾がリレーに挟まった逸話を史実で追い、バグという言葉が実はそれ以前から使われていた事実まで押さえられる。俗説と一次資料を切り分ける確認力が身につく。