料理とソフトウェアの違うところ

http://satoshi.blogs.com/life/2006/03/post_8.html
http://d.hatena.ne.jp/JavaBlack/20060320#p1

料理の品質は、客が簡単に評価できる。毎日メシを食ってれば、初めて入った店で出された料理を食べて「この店はダメだ」とか「この店は値段の割りにマトモなものを出す」とか判る。これで値段と品質の両方で競争原理が働く。

でも、システム開発ではそうは行かない。ユーザーはシステム開発依頼なんて年に1回も出さないし、毎回違うシステム開発会社に頼んだりもしない。「この開発会社はバグだらけのものを納品してサポートもろくにしない」「この開発会社は、こっちの業務内容をよく調査して、本当に役に立つシステムを作ってくれる。本運用後に問題が出た事も無い。」ということを比較できるユーザーがほとんど居ないのである。
品質が比較できない以上、競争原理は値段にしか働かない。業界全体の品質はいつまでたっても向上しない。

良いプログラマが悪いプログラマの20倍の開発効率と1/100の問題埋め込み率を持っているとして、良いプログラマばかりを雇う会社が良いプログラムを作って生き残り、適当にプログラマを雇ってる会社が淘汰される・・・ということにならないのは、このためである。

プログラマの能力差が競争原理に反映されないから、システム開発という業界はダメだね、という結論。

このブログに乗せているコードは引用を除き CC0 1.0 で提供します。