プログラムを作るときの話。
仕様書がいるかいらないかの話。
そもそも。
決められた予算に加えて決められた期間で仕事こなすための話。


予算と期間が決まっていれば、
物事に対して取れるアプローチの種類が決まります。
また、物事を行う人達が持つ力量によってもその種類は増減します。
少ない予算と少ない期間でもなんとかしようとしている人たちがいます。
予算のことは後回しで、予算を消化する正当性を手法に求めて超過するのもやむなしみたいな人たちもいます。


前者はギリギリのラインで余分を削ぐための試行錯誤を繰り返し答えを求めるのに対し、
後者はこれで成り立ってるからいいじゃねーかってなことをしばしば言います。
技術力と為せる所のバランスを見極めるための議論を交わす前者に対し、
予算となんとかなってることにあぐらをかいた後者の発言があります。
土台が違うよね。


僕らがF1レーサーなら、Fastest Lapと表彰台目指すところで話をしている。
一方、軽自動車でも周回できるしいいじゃんというやつらがいる。
僕らがマラソンランナーなら2時間4分台切るにはという話をしている。
一方、完走できればいいじゃないというやつらがいる。
さらに、自転車使えばもっと速くいけるじゃんとか競技関係ないことまで持ち出すのもいる。


ルール変えたらそらなんでもありだわなって思う。
予算と期限というルールを変えたら取れる手法はなんだってある。
予算度外視すれば、ウォーターフォールでも人海戦術でもなんでもやっていい。
期限を無視すれば、自動化共通化による生産性向上なんて考えなくてもいいだろう。
でも現実問題として、予算も期限も決まっている。
その中で安定した答えを、結果を出すためにどうすればいいかを考えている。
仕様書の意味を考えた上で、メンバー的に必要なければつくらないし、*1
楽しいからって各自の独自にプログラムを作らせていい理由もない。*2
プログラムのプロフェッショナルとしてどうだって話と、
ビジネスのプロフェッショナルとしてどうだって話と
一般的にどうだって話と、やはり土台は違う。


システム開発という事象を、
SIerはビジネスで語り、
我らはプログラムで語る。


現実問題に対処する際に
(,,゚Д゚)<お前のいうその方法で現状を打破できるのか?
って言うプログラマーはどっちもどっちでケースによりにけりでFA
と思っていたりするが、プログラムで語りたい気持ちが強い。

*1:後付でつくるのもあり

*2:期限をこえる要因だしな