Googleの開発環境に思うこと

あまり新しくもありませんが、Googleの開発環境について書かれているエントリを見つけました。
http://blog.livedoor.jp/heitatta/archives/54439839.html
さすがGoogle、まさにITをフル活用した次世代の社内開発環境です。
近年のオープンソースコミュニティーの開発の速さには目を見張るものがあります。他人の作ったコードを寄せ集め、修正、改良し、新しい付加価値を加えてまたそれを公開する。それをものすごい人数が、ものすごいスピードで当たり前のようにやっていて、日々無数のソフトが改良され、無数の新しいソフト、サービスが生まれ、またそのサービス同士もまたものすごいスピードでマッシュアップされ、そこにまた新しい付加価値が生まれる…。
当然会社での開発とは異なり開発メンバーは固定しておらず、自分のスキルが生かせるのであればどこにでも首を突っ込むことができます。他のメンバーが気に入らなければ、参加をやめるのも、枝分かれして開発するのも自由。
この世界にいる人は、
・母国語を喋るような感覚で超高速コーディングできるのが当たり前
・やはり母国語のように他人のコードを理解し、使いこなすのが当たり前
・思いついたらどうこう考える前に即作るのが当たり前
・やりたいことをやり、つまらなくなったらやめる
・自分の得意なことだけやり、苦手なことは他の得意な人におまかせが当たり前
・わずらわしい開発期間やコスト、人間関係や組織の壁、政治の心配など一切なし
という感じで、開発者から見てまさに理想に近い世界に暮らしている様子。開発に集中したい人間にとってはとても効率が良い仕組みで、生産性が高いのもうなづけます。普通の企業でも2~3番目くらいまでは得意な人を見かけますが、4番目以降はさすがにオープンソースでの開発ならではといったところでしょう。
上のGoogleの記事を見て、Googleというのはこういったネット上で生まれた新世代の開発環境を、社内で実現してしまったのだな、と思いました。
私も周りの同世代と比べてもそれなりにプログラムができるつもりでいましたが、こういった新世代のエンジニアと比較すると
・個人や組織での分担された開発が主で滅多に赤の他人のソースなど見ない
・他人のソースを利用できないので思いついたことを実装するにもそれなりの時間が掛かる
・だから何か面白いアイデアが思いついても作ろうという決心がつくまでも長い
・今与えられている仕事の責任もあり、そう簡単に方向転換できない
・歳をとったのか、こういった新世代についていこうにも全然腰が上がらない
…など、気づかないうちに完全に時代遅れの人間に成り下がっていることを思い知らされます。たまたま今の仕事はプログラムを書くことがメインではないので何とか成り立ってはいますが、30歳にしてこの世界で世代遅れになってしまっていることは恐ろしい現実です。
ソフトウェアやサービスを会社ぐるみで開発しようとしたとき、Googleの開発環境は恐らく今一番効率の良いものの一つだと思います。しかし他の企業がこのやり方をまねようと思っても、これだけ世代が違うとなかなか難しいでしょうね。
大きな組織に一旦根付いてしまった仕組みを変えたり、新しい仕組みを定着させるのは大変なことです。ある程度の規模の既存の企業にこのような仕組みか、さらに上をいく仕組みを取り入れようとすれば、まずは仕組みづくりやその必要性の議論に時間が費やされ、仮にスムーズに導入が決定しても変化についてこれない人などが現れるのは必至。一時的な生産性の低下は避けられず、大きなリスクとなります。
さらに、このあたりの仕組みは当然これからもものすごいスピードで洗練されていくはずで、Googleのやり方ですら古くなる時代もそう遠くはないでしょう。せっかく新しい仕組みを導入しても、その時その仕組みがまだ有効である保障はありません。
このようにめまぐるしく変化する世の中で、我々は一体どのように立ち振る舞っていけばいいのでしょうか。
個人的には、今後100年くらいかけてこのような変化に追従可能なベンチャー企業の独断場になるのではないかと予想します。そしてやがては上に書いたような理想がさらに具現化され、自分のやりたい仕事を好きなだけ行い、自分の仕事が生んだ付加価値分の報酬を受け取れる仕組みが出来ると(blog記事に関しては、アフィリエイトの普及で既にその仕組みが完成しつつあります)、いよいよ会社組織の成り立たない個人の時代になるかもしれません。

2 thoughts on “Googleの開発環境に思うこと

  1. 湊大典

    初めまして。
    MSX時代にはMSX-FANなどでFrieveのゲームを楽しませてもらいました。
    他人のソースを読めるか、読めないかはオープンソース開発でとても重要だと思います。大学時代の友人が読める人で、いろんなソフトでバグを
    見つけたら、ソースを読んで、パッチを投げてました。
    ああいう人にはあこがれます。
    俺はMSX->PC-98->Windowsと行ってからLinuxに移ったせいかソースを読むのが苦手です。
    現在はLinuxのファイラを開発していますが、人のソースが読めればもっといろんな機能を実装できるのにと悔しい思いをしています。
    プログラミングはプロではないので、まあ、それでもそんなに困りませんけどね。
    懐かしかったので、コメントしました。

    Reply
  2. Frieve-A

    湊大典さんこんにちは。
    MSX懐かしいですね。元MSXユーザが色々なところで活躍されているのを見ると感慨深いものがあります。
    やはり人のコードが読めるというのはいいですね。世の中にはコードを読むのに便利なツールなどもあるんでしょうね。
    他の人のコードを読まない場合、リッチな開発環境を使うのは一つの手かもしれません。昔と比べるとプログラムは考えられないくらい簡単になりました。

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *


eight − 4 =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>