コードがきれいに書けると顧客へ提供する価値は向上するのか

今思っていることを整理するがてら書いておきます。

僕がここ最近ずっと「コードはきれいに書くべき」「読みやすいコードを」と言い続けています。16日のオブラブの発表もそうですし、WEB+DB Vol.56の記事もそうです。

ただ、僕が話すメリットも基本的には開発者側の視点です。もちろん、開発者がメリットを享受した結果、顧客にも何らかのメリットはあります。(バグが減る、仕様変更のコストが減るなど)

とは言え、「コードをきれいに書ける」と言うのは「自分自身が書こうと思ったものを書ける」と言うことでしかないとも思うわけで、それはつまり「自分の脳内で思い描いたソフトウェアを具現化する」能力とも言えるのかなと思います。

じゃあ、仮に「顧客が思い描いたソフトウェア」と「開発者が思い描いたソフトウェア」でズレがあった場合はどうでしょう。当然そこに価値はありません。(価値が0とは言いませんが、理想よりは少ないことは確か)

更に言うと、「顧客が思い描いたソフトウェア」が顧客にとって本当に必要なものだとは限りません。

結局のところ、顧客に対して価値を提供するには「きれいにコードを書ける」こと以外にも更に何かプラスアルファがいるはずです。そのプラスアルファが何かは僕自身まだ答えはでていません。

ですが、プラスアルファが何であれ「きれにコードを書ける」技術はほぼ間違いなく必要です。理想を思い描けたところで、それを具現化する能力がおぼつかなければ意味がありません。

つまり、「きれいにコードを書ける」ということは、「前提」であり、その先も考える必要があるのだと最近は思っています。