エンジニアリングの仕事では、ちゃんと仮説検証を回すことが大事だと思っている。
課題を設定し、問題を切り分け、効いていそうな変数を特定する。
そのうえで、変数に対して値をひとつずつ変えながら、地道に検証していく。
これは当たり前のようで、実務ではけっこう難しい。
忙しくなると、つい「たぶんここが原因だろう」と決め打ちで直したり、複数の要素を同時に触ったりしてしまう。
結果として、直るには直ったけれど、何が効いたのか分からない、という状態になりがちだ。
最近はAIやコーディングエージェントのおかげで、こうした試行錯誤の速度だけはかなり上がっている。
ただ、探索が設計されていないまま速度だけが上がると、行き当たりばったりの作業を高速に繰り返しているだけになってしまう。
作業は進んでいるように見えるのに、判断材料はあまり増えていない。
だから、作業の速度が上がるほど、手を動かす前に確認することを少しだけ揃えておきたい。
このあたりが曖昧なまま進めると、試す回数だけは増える。
でも、次に何をすべきかは見えにくい。
逆に、ここがはっきりしていれば、失敗した試行にも意味が残る。
少なくとも「この条件では効かなかった」という判断材料にはなる。
例えば、Webシステムの挙動が遅い場合を考える。