技術記事を読むのが好きだ。
新しいフレームワークや設計手法、生成AIの活用方法を見るのも面白い。
でも最近は、サンプルコードそのものより気になることがある。
この人は、何を急いで決めて、何を残そうとしたのだろう。
少し前、自分が数年前に書いたコードを保守する機会があった。
機能は問題なく動いていた。
それでも画面を見ながら、何度も立ち止まった。
「なぜ、ここで境界を引いたんだろう。」
当時の理由は思い出せない。
けれど、その小さな判断だけは、数年後の変更のしやすさに確かな影響を残していた。
後から振り返ると、不思議なことに気づく。
後悔するのは、動かなかったコードではないことが多い。
むしろ、
急いで決めてしまったこと。
その判断は当時は合理的だったのかもしれない。
ただ、時間が経つと別の景色が見えてくる。
「あのとき、本当にそこまで決める必要があったのだろうか。」
そう思う場面が少なくない。
生成AIを使うようになって、実装は以前よりずっと速くなった。
不思議なことに、設計について考える時間は減らなかった。
むしろ増えた気がしている。
速く書くことよりも、
何を今決めるのか。
そして、何をまだ決めないでおくのか。
その境界の方が気になるようになった。
最近は、効率という言葉も少し違って見える。
工数を減らすことや処理を速くすることはもちろん大切だ。
けれど、それだけでは説明できない価値もある。
数年後、別の誰かがそのコードを開いたとき、
「ここからなら進めそうだ」
そう思える余地が残っているかどうか。
設計とは、その余地を整える仕事でもあるのかもしれない。
技術記事を読むとき、私は実装テクニックだけを見ているわけではない。
変更されることを前提にしているか。
未来の保守担当者を想像しているか。
まだ決めなくてもよいことを、急いで固定していないか。
そんなことを考えながら読んでいる。
数年後、自分のコードを見返すたびに思う。
思い出すのは、実装した機能ではない。
あのとき、なぜ急いで決めたんだろう。
最近は、その一瞬の判断の方が、コードそのものより長く残る気がしている。