協調作業の効率

プログラミングなんてもんは、一人でやる方が遙かに効率的に行えます。今コードを書いてる自分が理解できればたいていは問題ないわけで、書いたコードがたとえ1週間後に理解しにくくなり1ヶ月後によく読んでも理解できなくなっていき3ヶ月後には理解する気すらなくしてしまったとしても、まぁたいていの場合はそんなに問題にはならないです。

ただ、複数人が協調してプログラミングするとなると、この効率が激しく下がります。誰かさんが書いたコードを後でメンテするというのも一種の協調だととらえると、もはや「ソース読め」ではなくドキュメントと呼ばれるようなものを用意しなきゃいけなくなるかもしれません。ただ、複数人が少人数であれば、作業者同士で意思疎通をとるのもそれほど苦労しないかもしれません。

これが、どこの誰が書いたかわからんほどに人の多いプロジェクトとなると、もはや意思疎通とかいうレベルじゃ収まらなくなります。そんな規模のものは体験したことがないんですが、おそらく共通化されたコードの書き方・APIやクラスの仕様・単体テストのやり方・進捗状況の管理などなど、「コードを書く」という本来の目的とは少し違う作業が大幅に増えてくるんじゃないかと予想できます。もはや個人の作業効率なんてみてらんないくらい下がってることでしょう。

なぜ作業効率が下がるようなことをしなきゃいけないのか。結局企業や社会なんてものは、一人でどうにかなるレベルのものではなく、大勢が協力して一つの力となっていかないとどうにも動かせないんでしょうね。単位人あたりの仕事ではなく、全体としてどれだけの仕事量をこなしたかが問われるんだと思います。一人として実現できる規模なんてたかが知れている、大きな規模のことをやるには他の人の手を借りるしかない、大きな規模のことをやる人をえらい人とするなら、えらい人とはより多くの人を使いこなせる人ということなんでしょうか。

就活やってりゃ、いやでも「あなたはうちの企業にきて何ができますか?」というようなことを聞かれますが、結局のところ「多くの人を使いこなせる能力」こそが汎用的に求められる能力であり、ほかのできることなんて所詮小手先技術で、大きな規模のプロジェクトの前には無意味な効率にしかならないんでしょうか。んーんー、縦割り行政ってこれが究極に最適化された組織?んーんー。

とりあえずいえることは、「人を使いこなせる能力」以前の能力である「人に使いこなされる能力」が問われるのか?協調性がないやつはイラネってこと?

今日の戯言でした。

このブログ記事について

このページは、らるるが2005年2月 1日 01:00に書いたブログ記事です。

ひとつ前のブログ記事は「RADEON 9600XT購入」です。

次のブログ記事は「Regnessem Nightly Build Package」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

ウェブページ

Powered by Movable Type 7.9.0