Claude Codeの引き継ぎ書で作業を再開し、教材HTMLを相互リンクで分割する
引き継ぎ書を読んでから始めて
その日いちばんに投げたのは一行だけだった。
book-knowledge-base の続き。引き継ぎ書を読んでから始めて。
前のセッションは日付をまたいで終わっていて、自分では何がどこまで済んでいるのか思い出せない。 覚えているのは「引き継ぎ書を書かせた」という事実だけで、中身は書いた側の記憶にしか残っていない。
読ませたあと、まず数えさせた。 基準値20種 × 各125行 = 2,500行。 太字が付いた行が77行。 4つの検算式に違反した行が0件。
引き継ぎ書に書いてある数字と全部一致した。 ここが合っていれば、前のセッションで作ったデータを作り直さずに済む。 引き継ぎ書の値打ちは「何をやったか」ではなく、「この数字と合うか」を翌日に照合できるところにあった。
文字サイズと行間は別のレバーだった
やりたいのは、蔵書DBから起こした一覧表を紙で読める形に整えることだった。 自分で表計算に貼ってフォントを拡大して印刷する、というのが元の段取りだったが、画面で出来上がった表のほうが見やすい。 だったら印刷可能な様式まで作らせたほうが早い。
12pt / 16pt / 20pt の3案でサンプルを作らせた。 最初の測定は3サイズとも「あと1行」で次のページに届かなかった。 そこで行の高さを可変にして詰め直させたら、今度は計算と実寸が合わない。
原因は2つあった。 1つは、均等割りの処理が指定値ではなく縮小後の行数で判定していたことだった。 もう1つは、見出しと凡例が文字サイズに比例して肥大していたことで、20ptでは凡例だけで縦18mmを食っていた。 大きくしたいのは数字であって、飾りではない。 見出しと凡例のサイズを本文から切り離して固定させたら、数値が素直に並んだ。
ここで分かったのは、文字サイズと行間は別のレバーだということだった。 行間を詰めれば、文字サイズを保ったまま枚数が落ちる。 3案の比較が文字サイズだけの違いになるよう行間を固定させて、ようやく比較の土俵ができた。
全20系統に換算した枚数は 12pt=80枚 / 16pt=100枚 / 20pt=120枚。 副産物として、同じ枚数なら14ptより16pt、18ptより20ptのほうが必ず大きいという関係も出た。 14ptと18ptは選ぶ意味がない。
「これは何か決めなきゃいけないんですか?」
トレードオフ表が出てきたところで、手が止まった。 サイズと枚数と行間が並んでいて、どれを自分が決めるのか分からない。 そのまま聞いた。
返ってきたのは「決めることはありません」だった。 紙に出して 12pt / 16pt / 20pt のどれかを言うだけでいい。 行間は見本と同じゆったり版で全系統を作る。 その少し前に来ていた「どちらの枚数か指定してください」という質問も、余計だったとして撤回された。
選択肢を作った側は、選ばせる必要のないものまで並べてしまう。 判断を求められたときに最初にやるべきは、選ぶことではなく、本当に決めるのはどれかを数えさせることだった。
組み合わせの数が思ったより減る理由
その引き継ぎ書を書かせた前のセッションで、自分の理解が一度止まっていた。 教材の表示幅を広げさせている最中だった。 説明を読んでも、組み合わせの数の勘定が飲み込めない。
素朴に数えた組み合わせの数と、教材が示す候補数の桁が合わない。 なぜそこまで減るのか。 減らすのに要る前提は、見れば分かるものなのか、それとも別途探す必要があるのか。
聞いたら、元の資料を確認したうえで答えが返ってきた。 3つの数字は独立ではなく、隣り合う数字の差というルールで縛られている。 基準値が定まると、各桁は5つの値しか取れなくなる。 5 × 5 × 5 で125。 それだけの話だった。
自分の言葉で組み立て直して投げると、大筋は合っていて1か所だけ直しが入った。 基準値のほうは見て分かるものではなく、自分で探り当てる必要がある。 つまり手順は2段構えになる。
論点が違うなら、ページを分ける
ここで方針を決めた。 既存の教材HTMLに説明を足すのではなく、「なぜそこまで減るのか」だけを扱う独立したページを作らせて、相互リンクで行き来させる。 既存ページはダイヤルを回して手順をなぞるためのもので、数の勘定はそれとは別の論点だった。 1枚に混ぜると、どちらの話を読んでいるのか分からなくなる。
作らせるにあたって、まず1回の試行にかかる時間の根拠を元の資料から取らせた。 候補が100万から125に落ちることを「何通り減った」ではなく「何時間減った」で見せたかったからだ。
出てきた初版には粗があった。
- ボタンのラベルに別言語の単語が混入していた
- 円環をまたぐ位置で基準値の判定を間違えていた(0の前後で誤答する)
- 連打すると無反応になる(回転中はボタンを無効化させた)
- 回転につれてダイヤルの数字が逆さまになり、読めない
最後の1つは、目盛りだけを回して数値は中央に固定する形に直させた。 判定のバグは、円環をまたぐケースを含めて20回すべて通ることを確かめてから閉じた。
既存2ファイルにも相互リンクを足させた。 外に出す版では、手元にしかないファイルを指すリンクが自動で隠れるようにしてある。 リンク切れを見せるくらいなら、リンクごと消えたほうがいい。
父が見たいのは表だけだった
表そのものにも注文を出した。 読むのは父なので、フォントを2倍、スクロール領域の高さを1.5倍にするよう頼んだ。
ここで2回つまずいた。 1回目は、ヘッダー行だけ指定が効かないと言われたが、測定対象を間違えていた(別セクションの表を測っていた)。 2回目は、網掛けのセルにまで太字が付いていて、2種類の印が混ざって見えた。 バグではなく表示の作り方の問題だったので、凡例を付けて別物として区別させた。
そのうえで、もう一段分けた。 父が見たいのは表だけで、解説も操作も要らない。 表専用のページを独立させ、既存3ファイルと合わせた4ファイル全部の最上部に、共通のナビバーを付けさせた。
表のページでは上部が242px占有していて、スクロールすると読む面積が足りない。 スクロール時は列見出しだけが残るように直させたが、これが一度効かなかった。 原因は、横スクロールの指定が sticky の基準を奪っていたことだった。
スクショが2回繰り返して見えた
途中、送られてきた確認用のスクリーンショットが同じ内容を2回繰り返しているように見えた。 ページが二重に描画されたのかと思って確かめさせたら、実ページは8,930pxで、見出しは h1 が1つ、h2 が7つだった。 重複していたのは撮影側だった。 部分表示に切り替えて確認し直した。
疑うべきだったのは、ページではなく撮り方のほうだった。
次のセッションへ渡すもの
セッションを切り替えたくなったところで、計画書を作っていなかったことに気づいた。 新規ドキュメントとして、引き継ぎ事項と今回やった内容を残させた。 条件は1つだけ付けた。 どのファイルに何を残したかを、フルパスで書くこと。
書かせた計画書は Codex でレビューさせた。 1回目に4点、反映してからの再レビューで2点。 どれも妥当だったので全部入れさせた。 最後にHTML化してChromeで開き、表示を自分の目で確かめてから閉じた。
この引き継ぎ書が、翌日の自分を最初の数分で立ち上げた。
学び
- 引き継ぎ書に値打ちを持たせるのは、作業の説明ではなく、翌日に照合できる数字とフルパス
- 判断を求められたら、選ぶ前に「決める必要があるのはどれか」を数えさせる。選択肢は作った側が増やしがち
- 印刷レイアウトでは、文字サイズと行間は別のレバー。飾りを絶対サイズに固定しないと、大きくしたい数字が飾りに押し出される
- 分からないまま進めない。仕組みを聞いた結果、論点が2つに割れてページが分かれた
- 見る人が違えば、要るページも違う。全部入りの1枚にまとめない
- sticky が効かないときは、自分の指定ではなく祖先の overflow を疑う
持ち越し
- 印刷見本を紙に出して、12pt / 16pt / 20pt のどれかを選ぶ
- 表の中身を手元の原本と突き合わせる