他人に指摘されるより自ら省みることを助けてくれるツールが欲しい

本エントリはオルタナティブブログの2008/9/4で公開したものを改変したものである。

                                                          • -

ソフトウェア開発に携わり、周りから職人と称される複数のエンジニア、自身の技術をとても大切にしている複数のエンジニアから聞いた話。それなりにニーズがあるのではないかと思う。「誰かに見せる前に何らかのソフトウェアを使うことにより、誰かに指摘される前に一通り自分でチェックをしておきたい」と思うエンジニアは多いようだ。

ソースコードを例に挙げると、gccでもコンパイルオプションを与えれば使っていない変数や初期化を忘れている可能性のある変数、条件分岐で通ることのないパスの指摘ができる。コードレビューを実施する前や単体テストに入る前などに実行して、自身のソースコードの不備を把握し必要であれば修正することができる。FindBugsのように典型的なパターンをもとに、不具合の可能性のある箇所を指摘するソフトウェアもある。

これらのツールは、他人に見せる前に自分でチェックするという以外にも多くの人の手間を省いたり、事前合意につながるという意味で非常にメリットが大きい。ソフトウェアに限らず、職人と言われる人の製品、成果物、作品は細部に至るまでかなりのこだわりがみえることが多いように思う。他の人の力を借りながらだと過度のこだわりは難しいが、ツールの力を借りている分には、(コストが許す範囲で)こだわることができる。そのこだわりは職人を育てているものの1つだと思う。

ツールが自分を育ててくれると考えるならば、ツールをこれまでとは違う視点でみることができるように思う。