2010年1月13日水曜日

遅く念入りな仕事は早すぎる最適化 - 「ハッカーと画家」Paul Graham著

・・・ソフトウェアでは腕の良さは素早い仕事を意味する。・・・遅く念入りな仕事は早すぎる最適化だ。むしろプロトタイプを素早く作り上げて、それによって新しいアイディアを得てゆくほうがよい。・・・(p.2)

スパイラル開発とかアジャイル開発とか呼ばれるやり方をイメージしているのだろう。学生の頃からずっと心がけていることだ。できるだけ素早くユーザーが使えるプロトタイプを作ってフィードバックを得ながら開発に反映させていくやり方は非常に合理的なやり方だと思う。

そして同様に学生の頃からずっと考えている問題は、どこまで実装すればプロトタイプと呼べるのか?という見極めのポイントだ。これが難しい。ケースバイケースであることは間違いない。

これまでのところは、とにかく思いついたソフトウェアから最低限の意味を成す限界まで機能を削減したものではないかと思っている。

そうすることで、素早い開発を行うことだけでなく、自分が考えているソフトウェアが一体何をするモノなのか、何を目指しているのか、何がコアなのかを見極めることができるのじゃないかと。