アプリケーションの境界
外から来るものはすべて信用できません。鎖を一つずつ壊して、どこで止まり、画面に何が出るかを見てください。
図の一部をタップすると、その段階が開きます。
境界の全体
通信 → ステータス → 解析 → 形 → 存在 → 画面上のただ一つの状態。どの段階も、裸のnullではなく名前のついた結末を返します。だから画面は、何が起きたのかと何を出すべきかを常に知っています。
収録内容
- 1 そもそも出ていかないことがある — 鎖はここで止まります。これより下は試みられすらしません。
- 2 応答はまだデータではない — ステータスを見ずに解析することが、エラーページを部品の内部の例外に変えてしまいます。
- 3 形は一度だけ確かめる — 境界での一度の検査が、データを使うすべての場所での防御的な検査を置き換えます。
- 4 形が正しくても存在するとは限らない — 「見つからない」と「何かが壊れた」が呼び出し側から同じに見えてはいけません。
- 5 状態は一度に一つ — 別々のフラグは、誰も設計していない組み合わせを許します。一つの項目は許しません。
インタラクティブな解説
- 薬はどうやって血液脳関門をすり抜けるのか 脳はほとんどすべての薬の分子を通しません。そしてそれは正しい判断です。スライダー一本で、いま研究室が試している手を追います。壁がもともと運び方を知っている小胞に、分子を包んでしまうのです。
- ロボットは初めて入った部屋の地図をどう描くのか ライダーが一回転で返すのは数百個の点だけで、自分がどこにいるかは分かりません。スライダー一本で、その点群から、ロボットが正しい位置に立つ間取り図までを歩きます。
- 二人が同じ一行に打ち込んでも、一文字も消えない仕組み カーソルは二つ、行は一つ、真ん中でペンを握る人はいない。スライダー一本で、添字による併合を分解し、文字と文字のあいだにある住所で組み直します。
- 量子計算機はなぜ格子の前で止まるのか ショアのアルゴリズムは RSA を一手で食べてしまいます。同じ機械が、少しノイズを足された点の格子にはほとんど歯が立ちません。スライダー一本でその差を見ます。
- 宇宙へ向けて建物を冷やす 直射日光の下でも周囲の空気より冷たいままで、電力を一切使わない塗膜。スライダー一本で、太陽から大気の向こう側まで熱を追いかけます。
- ロボットはどうやって次の一秒を予測するのか 言語モデルは次の単語を当てる。世界モデルは次のフレームを当てる——質量も速度も重力も込みで。スライダー一本で、カメラから捕球までの一周をたどれます。
- 秘密を明かさずに証明する 一方のスライダーで段階を進み、もう一方でラウンドを増やします。確信がほぼ確実まで上がっていく一方で、秘密は秘密のまま残ります。
- かん水からのリチウム:蒸発池と直接回収 スライダーで五つの段階をたどり、同じ塩水から同じ金属を取り出す二つのやり方を比べてください。
- 個別化mRNAがんワクチンの仕組み スライダーで五つの段階をたどり、腫瘍そのものの変異が、免疫にその腫瘍の見つけ方を教える設計図へ変わっていく様子を見てください。
- 自分の文書を検索する仕組み スライダーを動かして、検索の流れがモデルに何を見せるかを決める様子を見てください。まちがった一節を渡したとき何が起きるかも。
- 再送とおそい応答 操作の途中でネットワークが切れます。ボタンを二度押して、データベースに何が残るかを見てください。冪等キーがある場合と、ない場合とで。
- 言語モデルはどう文章を書くのか 重みは凍結され、何も覚えられません。スライダーを動かして、モデルが次の断片を何度も選び続ける様子を見てください。
- 言語モデルはどう学ぶのか スライダーを1つ動かして、でたらめな数の山が千ステップで予測に変わっていく様子を見てください。
- 電気はどこから来るのか スライダーを1つ動かして、川から水をくみ上げるポンプまで、エネルギーの道のりをたどってみてください。