RailsとYouTubeは「自転車創業」だ
Ruby on Rails(以下Rails)は、Linux、Apache、Firefox等に続く、最も成功したオープンソースソフトウエアになりそうである。そして、それは同時に、これまでのオープンソースに無い、全く新しい質を持つ新しい現象の芽生えでもある。オープンソースという現象が、WikipediaやDiggの成功を通して、プログラマのコミュニティの外にインパクトを与えているように、Railsの中に芽生えつつある新しい「質」も集団知や新しい社会システムのデザインについて、ひとつの大きな参照点を構築するだろう。
その新しい「質」とはひとことで言って「スピード感」である。
成功したオープンソースソフトウエアは、全て、モジュールあるいはプラグインシステムを持っている。つまり、多様なニーズとシーズを持つ多数のプログラマがエコシステムを築くことが可能になっていて、それが特定の有力なニッチに最適化すると同時に、周辺にあるさまざまな特殊な事情に柔軟に適応することを可能にした。
そこに爆発的進化が起こることが、オープンソースソフトウエアが成功する兆しであり、その兆候はRailsの周辺にもはっきり見られる。
それは、ここまで多数のオープンソースソフトウエアを見てきた人間なら容易に感じ取れることである。ひとつのエコシステムの爆発的進化とそこにむらがるハッカー達というのは、ある意味、今では見慣れた光景ともなっている。
ただ、Railsがこれまでのケースと違うのは、そのスピード感である。
Railsの進化は無茶苦茶早い。その「速さ」は量的な違いではなくて質的な違いを持つ「速さ」であると私は思う。
Railsで何かを作ろうとした場合、最も難しい決断は、それを作るかどうかである。「どうせ誰かがそれを作ってるのに、探すのでもなく待つのでもなく自分でわざわざ作成することに意味があるのか?」ということが難問だ。ブログであれ、Wikiであれ、複雑なクェリーであれ、少しでも汎用性のあるものは、探せばプラグインとして提供されている。一応検索して無いのを確認して作りはじめると、最初のイテレーションが終わらないうちに、もうそれが出来て公開されて話題になっている。何かのAPIから具体的なアプリケーションからテクニックからテストツールから、さまざまなレベルでそれが起きている。
これには、さまざまな理由があるが、一番大きな理由は、新しい世代が関わっているからではないかと私は推測する。
物心ついた時にはネットがありLinuxがあった世代。彼らの世代には、ストールマンやレイモンドは要らない。私は、オープンソースの現実的効果を確認すると同時に、ストールマンやレイモンドの思想で自分を洗脳して、しぶしぶ自分のソースをちょっとだけ公開した。思想には縁がなくても、何らかの形で自分を「説得」してからでないと、安心して使えなかった人は多いだろう。そういうややこしい手順は彼らには不要なのだ。
新しい世代が見ているものの中に新しい要素は何もないし、新しい思想もほとんどない。それなのに何故彼らが次元の違うスピード感を持っているのかを考えると、彼らには思想という重みが無いことに気づく。彼らには、オープンソースの世界に身を投じるのに思想はいらない。自分を説得する必要がない。彼らにとってオープンソースは空気のようなもので、当然そこにあるべきもので、whyが不要なものだ。
そういう新しい世代がコアになっていることがRailsという現象の新しさなのではないだろうか。
Railsはプログラマの為の純粋に技術的な素材である。そのことが、立ち上がりのフェーズで古い世代を効果的に排除した。YouTube(やたぶんMy Space)にもおそらく同じ要素があるのだろうが、技術的な要素が無い分だけ、現象としては古い要素にも、まみれてしまっている。YouTubeやMy Spaceの中に新しい現象を見るにはフィルタが必要だが、Railsの中にはより純粋な「スピード感」がある。
しかし、どれも「思想」を排除して「スピード感」に着目すると、共通点が見えてくるのかもしれない。古い世代が「思想」を抽出できた頃には、新しい世代はそこを既に後にして駆け抜けてしまっている。彼らがやっていることは「自転車創業」である。スピードが広義の創業の不可欠な要素になっていることが違うのだ。
自転車を静的に解析することはできない。自転車は走っていなければ転ぶが、走っている限り自立するからだ。走っていることの爽快感を中心に据えないと、自転車創業の意味はわからない。
(追記)
おまけとして、最近気になったいくつかのエントリを、この観点から見てみると
Rails にはこのように、妙にロジカルというか、原理原則から単刀直入に演繹したロジックでどこまで行けるか、という面があるように感じられる。
おそらく Rails は、おそらく一般に思われているよりも野心的、実験的なプロジェクトなのではないか。
これは、このエントリの最も大きなヒントになった一節。「Railsには何か野心的な部分がある」ということには同感で、それは何だろうと考えているうちに、このエントリのアイディアが浮かんできました。
SeleniumやrBatisは、Railsの周辺に別のエコシステムを構築しそうな気がします。それも「見慣れた光景」の一部なんだけど、やっぱり速すぎる。
〈生活世界〉が全面的に〈システム〉に侵食された段階では、素朴に〈生活世界〉を肯定し、或いは素朴に〈システム〉を否定することに意味はありません。〈システム〉自身が生き残るためにこそ、昔の〈生活世界〉の等価物を創り、〈システム〉に埋め込む以外ない。
現代社会を覆いつくす一つのパラドックスの図式を提示していて、その議論は非常に網羅的ですが、抜けているものがあるとすれば、私がここで論じているRailsの「スピード感」。それが、「〈生活世界〉の等価物」なるものの構築の鍵になる気がします。
Railsの「スピード感」は、charlieさんの言う「祭り」に近い面もあるけど、オブセッション(せっぱつまり感)がない所がちょっと違うと思います。