真剣に手を抜くと言う事
開発の速度を上げるには、
それなりに努力を要する。
という話。
今ぶち当たっている
「開発の速度を上げる」
は、
「無駄を省く」事。
・人がやらなくても良い作業は、コンピュータにやらせる。
・まとめてやれる事はまとめてやる。
・一人がやれば済む事は一人がやって周りに情報を伝播させる。
・同じ事は出来る限りやらない。
少しずつ、少しずつ無駄を省いてゆく。
顧客の業務に関しては口を出している事を、
そのまま自分達に当てはめるだけだ。
とまぁ、言うは易し。
問題は、何故自分たちの仕事には適用できないのか。
ルソー曰く
「人はつねに、学べばわかるより良い方法よりも、慣れてしまったより悪い方法を使うことを好む。」
らしい。
まぁ、今までやってきた事が
「アホ丸出しでした。」
なんて平然と言えないわな。
少しだけ具体例。
コードや設計の見通しが良いと言う事は、
「保守がしやすい」
「変更点が洗い出しやすい」
など、利点だらけだ。
長期的な目線で見れば、
手を抜ける。
長期的な目線で見て、真剣に手を抜くならば
「一週間掛けた5000行のコード」
より
「一週間掛けた1000行のコード」
だ。
デザインパターンを考慮したり、
見通しの良いコードを作るには
それなりに時間がかかる。
決してプログラミング作業自体が早くなる訳ではない。
(ココらへんはペアプロと考えが似てるかな?)
これを成果物のボリュームと人の単価だけで判断すると、
前者の方が「効率が良い人」となってしまう。
「効率の良い人」が増えたり、
「効率の良い人」に作業が集中して、
結果、開発は鈍化する。
開発の速度を上げるには
(場合によっては)管理指標自体を変える努力も必要となる。
と言う事。
まぁ、簡単に変われるとは思わないけどね。