プログラムを一度作って、そして作ったときには思ってもみなかった要求を他の人から出されて、ちょっと付け足して、作ったときには必要だったのが必要なくなったからちょっと削除して…というのを何度も繰り返すと、かなり高い確率でぐちゃぐちゃでどこをいじったらどこが変わるのかわからないようなシロモノができあがる。
多少とも腕のある人が一人ないし少人数で作って、同じレベルのメンバーがきちんと保守してればあまりそういうことにはならないのだけど、そういう幸運なケースというのは残念ながら少数派なので、世の中のほとんどのプログラムは時間とともにぐちゃぐちゃになっていく。
ぐちゃぐちゃになったモノを前にして、多くの人は「壊してえ…」とぼそっとつぶやく。
そこでアメリカ一の大金持ちのビルゲイツさんはいいこと言ったね。いや、誰が言ったんだかほんとはよく覚えてない。ゲイツさんだったような気がする。
プログラマの犯す最大の間違いは、一から作り直せば全ての問題が解決すると思ってしまうこと
とか、そんなような。
僕はそれを読んで、「分をわきまえる」ということなのかなと思った。
最初から作り直したってね、そのモノを作るのと同じ時間かけて作るってのがどだい無理なんだし、かりにそんな大量の時間と資源を与えられたとしても、今目の前にある問題は解決してるけど、そのものがすでに解決しちゃってた問題が再発したりとか、いろんなことが起こって、「完璧で美しいステキな完成品」からはほど遠いところに墜落するのがオチなんだよ、と。
ましてや、そのぐちゃぐちゃな状態を作ってたのが自分である場合。その人は一から作り直しても、間違いなくもう一度ひどいものを作ってしまう。
「自分のせいじゃない、外部からあれやこれやと横槍が入って。」
「ちょうどそのとき時間が無くて。」
同情はするけど、それに対応できなかった人は、次回も対応できない。