効率

仕事に無駄が多い。
明らかに無駄なのに改善しようともしない。

たとえば今行っている開発では、環境担当が毎週10回はインストール作業を行う。一回に一時間はかかるのに、毎回手作業で行っている。これが半年くらい続くのだから、250回以上、つまり250時間以上を費やしていることになる。

なぜか単調なことだけはできるヤツが延々時間をかけてやっている。
しかし、10時間かけてインストーラーを作ったとする。これで250時間の作業が10時間に化けることになる。
全自動ととはいかなかったとしても、人間が手をかけなくてはならない時間は劇的に短縮される。

同じことをして同じ結果を出すには、作業のスピードを上げなくてはならない。
しかし同じ人間なので作業のスピードは大して変わらない。

100m移動するという結果を生み出すために、小学生が走っても一流のアスリートが走っても20秒と10秒という程度の差。
しかし100mを移動するのに自転車を使えば小学生でも同程度の結果がだせるかもしれない。

走ること自体が目的ならともかく、結局なにをするかを変えていかないと本当に効率を上げることはできない。やり方を変えるだけでど素人が一流のプロと同じ結果を生み出せる。
効率を上げるには、同じ結果を生み出すための手段を変えることだと思う。


開発期間を短縮するためにプログラミングや試験のスキルをあげたところで限界は見えている。
プログラミングのテクニックを覚えて速くタイプしたところで限界はある。どんなにがんばったって100kラインを作るにはそれなりの時間を要する。
しかしここで自動的にソースコードが生成される手段を考えたとする。1kラインのツールで100kラインのコードが生成できるとしたら、圧倒的に時間を短縮することができるであろう。

ログの見方を一所懸命覚えるより、見やすいログを出力するようにしたほうがよい。
わからなくてただ悩むよりも有スキル者のスキルを利用してやったほうがよい。

コストがどこにあるのか考えたほうがいい。
ひたすら時間をかけることを何度も繰り返すのと、短時間で実現する仕組みを一度だけ時間をかけて作るのと、どちらがよいのか。
1x250と、10x1+250x0.1はどちらが少ないコストで大きい結果を生み出しているのか、小学生でもわかる簡単な問題だ。

仕事に限った話ではない。プライベートの時間だって自身にとってはコストだ。
自分がなにをしたいのか、そのためにどうすれば一番簡単に結果を生み出せるのか。

そういった意味では、こうやってプライベートの時間をつかってblogを書いているのは時間の無駄ではないんだっけ?