makotan _at_ gmail dot com

アフォなコードの価値

#意味不明系に戻すんじゃないのかと・・・(笑)
「どんなコードでも動けばいい」っていうのがアフォなコードの最大の言い訳です・・・ええ、必ずと言っていいほど言われました・・・アフォなコードであってもきちんと納期に間に合って作れて、アフォなコードであっても要求通りに動作しているんだから問題ないじゃないかと・・・
客にはアフォなコードかどうか判るわけがないっていうのには納得です。たとえば、”1週間だけ動けばいい”コードはアフォなコードだろうがどうでも良いって言うのには納得なんです。
ソフトウェアって言うのは”繰越資産”に分類される資産なんです、個人の身近な資産だと(分類はあれだけど)車って資産ですよね。その車はただ走るだけでいいの?安全性とか気にしない?燃費も?この会社の車はやばいから次買うのは辞めようとか考えない?車に新しいパーツをちょっと付けようとしたら無理とかとんでもない金額を請求されても怒らない?良く不調になって修理に出しても文句言わない?アフォなコードってこういう現象が起きないって言いきれる?
ソフトウェアが動くって言う以前に満たすべき最低水準の基準が「まともなコード」だと思うんです。
たとえば、S2が今と全く同じ動作をするアフォなコードだったら使いたいと思います?プログラムには要求通りに動くという基準とは別の基準が当然のようにあるんです。それがソフトウェアとしての品質と言われる部分なんですが、アフォなコードは要求通りに動作するというレベルの品質しかクリア出来ないんです。車で言えば、最悪のパターンとして部品のどこかに亀裂が入ったり、突然延焼するような感じですね。(そんな車乗りたくね〜よって思うんならアフォなコード書かないようにしようって思って〜)