スクロールに合わせて、写真を縦に引き伸ばす動きを作った。測ると、倍率は何度直しても1のままだった。実装を何度も書き直した。最初から動いていた。
この研究を一言でいうと──数字が変わらないときは、実装の前に物差しを疑う。
空白1つで、測れていなかった
倍率は、ブラウザが返す変形の値 matrix(0.699, 0, 0, 2.249, 0, 0) から取っていた。値を拾う正規表現が、カンマのうしろの空白を想定していなかった。拾えないときは1を返す作りだったので、「効いていない」に見えた。別の書き方で測り直して、初めて食い違いが出た。
物差しが壊れていた4つ
| 測ったもの | 壊れ方 | 直した測り方 |
|---|---|---|
| 変形の倍率 | 空白で拾えず、1と報告 | 括弧の中身を丸ごと取り、カンマで分ける |
| 横のはみ出し | 画面幅と比べるだけ=はみ出しを隠す指定のとき見逃す | 実際に右へ動かして、動いたかを見る |
| 位置合わせ | 相手のスクショを目分量で寄せた | スクショを画素で測る |
| 画面の撮影 | 範囲の指定がページの座標で、別の絵を撮った | 要素そのものを撮る |
どれも、実装を疑っているあいだは見つからなかった。横のはみ出しは、使った人の「スマホで左右が揺れている」という一言の方が、物差しより正しかった。
決めたこと
- 数字が「変わらない」と出たら、実装の前に物差しを疑う。
- 同じ値を、2つの違う道で測って突き合わせる。
- 横のはみ出しは、実際に動かして測る。
あなたの物差しは、最後にいつ測られましたか。
— 他の研究を読む