いきなり全速力で走ってはいけない

 開発においてありがちな失敗はいきなり全速力で駆け出して、いくらかもいかないところで失速してしまう、ということだと思う。最後にはバテバテでもうコードを追うのもやっと、といった状態になりかねない。
 殆どのプロジェクトは長期的な要素を持っている訳で、はなから全速力で走り出したら息切れを起こすのは自明の理だ。
 これをやってしまう原因というのは以下の理由によるものかもしれないと考えてみた。


 例えば理解度が1(時間あたりの処理効率)の状態で100のことをしなければならないとしたら、そのまま100だけの時間がかかる。
 が、最初にダッシュして理解度を深め2や3の状態で100の事をしようとすれば、50や33といった時間で済ませる事ができる。
 なので、最初は飛ばしておいて距離を稼ぐべきとも考えられる。
 しかしながら、最初にものすごく多くの事を理解しよう(詰め込もう)と思ってもそうは問屋が卸さない。初期の段階で理解度を二倍とか三倍に増やすのは恐らく無理である。
 こういうことはどちらかというと経験やノウハウがものを言うのであって、短期的なダッシュが生み出す効率ではない。
 できれば最初は温めの速度でスケジューリングをしっかりとたて、コミュニケーションに注視すべきだと思う。
 己の性能を把握せずに先頭集団についていくべくダッシュをするマラソン選手はいない。目測を見誤らない事が大事だ。

 もっともっと長いスパン、例えば人生などの効率でいけば若いうちにがむしゃらに理解度を深めておいて、後年にそれを生かしていくというのはアリなんだろうけれど。
 これはどちらかというと、若いうちに努力するか、同じペースで努力するか、必要になってから努力するか、とかそういうレベルの人生論なのですけども。

  • 若いうちに努力
    • 年老いたときに楽かも
  • 同じペースで努力
    • 山もないけど谷もないマイペースに進めて楽かも
  • 必要になってから努力
    • 必要ないことで努力しなくていいので楽かも