Rails的世界の「安心」と「信頼」の力学

に対する、sociologicさんのコメント。

「劣化」っても昔と比べないと判断できない気も。むしろ「安心社会から信頼社会へ―日本型システムの行方」じゃないですが、もともとそういう国民性なのでは。

これは、日本人の国民性という点では、全くその通りだと思う。

「安心」ベースの社会(知っている人への信頼をベースに構築された社会)と「信頼」ベースの社会(知らない人への信頼をベースに構築された社会)には、それぞれ得失があるけど、その力学がオープンソースの世界では全く違い、Rails的世界では、さらに大きく違って来る。

naoyaさんが、こういう感覚は何も Rails が始まりではないと思うけどなと言うのはよくわかる。よくわかると言うか、Railsを実際に使う前には同じように考えていた。「Railsという現象の本質について、私はすでにわかっている。ちょっと勉強すればすぐに使える」と思っていた。何年もRubyでプログラムを組んでいるのだし、賛否両論あるにしろオープンソースでいくつも人気エントリーを書いた私である。周辺のツールを含め、あっと言うまに使いこなして達人になってみせるさ、くらいに甘く考えていた。

ちょうどいい具合に日本語のRails本出版ラッシュが来た所で、真剣に使い出したのだが、何かが予想と違うと感じた。

それはまだうまくまとまらないけど、「信頼」というキーワードを使って強いて詩的に表現したらこんな感じ。

オープンソースの世界は、「知らない他人を信頼した方が得になる世界」である。Rails的世界は、「知らない他人を信頼しないと地面が見えてこない世界」である。オープンソースを使うならば、「信頼」は頭のレベルでよいのだが、Railsを使うならば、「信頼」が身体にしみついてないとダメだ。

もちろん、私は「信頼」が得であることを頭で理解していて、それで技術的な素養もあるから、やればやっただけわかってきてそれなりに使えるようになってきているけど、波に乗れている感覚がない。その代わりに、睡眠時間をゼロにしてMLとブログを全部追いかけないと、すぐに追いてかれてしまうような強迫観念がある。

「信頼」と何かと言われれば、他人が書いたコードを使うことに頭を使うことや、自分が普通にコードを書く場所が当然のように全開で公開されていることや、自分だけしかできないという具体的な根拠があること以外は全部他人がどこかで同じことをやってると信じることとかで、それはあたり前のことだけど、そう思うことに何の努力もいらないことが本当の「信頼」だと思う。

何の努力もなくそういう方向に考えることができることが、紛れもなくひとつのスキルであって、そのスキルが無いと、非常に大きなハンディキャップになる。一日48時間情報を追いかけても追いつかず、自分でコードを書く暇がなくなる。

(これは至近距離で確認したけど)このムーブメントの中心にいるDHHのお肌があんなにスベスベなのは何かがおかしい。たとえ4時間くらいでも、DHHが睡眠を取ったら、その間に、Railsムーブメントはとんでもない方向に進んでしまい、彼が起きた時には、もう取り返しがつかない状態になってしまうはずだ。あのスピードで進化しているのにDHHのお肌とRailsリポジトリが共に健全なのは、彼が何か特殊な技能をマスターしているからで、それは、スキルとしての「信頼」だろう。

CPANLinuxカーネルでも同じことが起こっているのかもしれないが、Railsでは非常にパンピープログラマの領域まで、それが露出している。

単なるアプリケーションを作るのに、スキルとしてのセンスのよい「信頼」が必要である。自分が作るアプリケーションより、Railsはずっと早く進化する。プラットフォームが電車より先に進んでしまうのだ。そういう不確実な世界で安定を求めたら一歩も前に進めない。まだ見ぬ未来を基盤として、モノを作る必要がある。まだ見ぬAPIを漠然とでも理解するには、自分がオープンでいて、ムーブメントの空気を呼吸していないといけない。呼吸する為には、「信頼」が必須条件である。

他人が恐いと呼吸ができなくて、呼吸ができないとプラットフォームが進んでいる方向がわからなくて、方向がわからないとプログラムが組めないのである。

息を止めてフリーズして、ある瞬間のRailsを解剖することはできるが、次の瞬間それはもはやRailsではない。抜け殻しか使えなくても生産性は大幅アップするが、生のRails使いがうようよいる世界で比較優位は得られない。息を止めてこっそり書くプライベートなコードがあっていけないということではないが、息継ぎとして次に書くコードを公開しないと溺れてしまうだろう。コードを公開しブログを書くことが、息をするくらい楽にできないと、自分が書くコードに神経を使うだけの余力が残らないのだ。

たぶん、naoyaさんには、こういう感覚は何も目新しいことはないのだと思う。ただ、Railsの場合は、これが参加資格となって暗黙に強制されているような所があって、野次馬が自動的にそこに巻き込まれていく点が、これまでに無い所なのではないだろうか。コアから見るより周辺から見た方が、この違いはわかりやすいかもしれない。

そして、LinuxWikipediaになったように、Railsという現象の中にある本質的なものは、次のWebの重要な構成要素になる。

日本人が「信頼」が不得意だとは思わないが、それが社会現象として顕在化した時には、安心ベースの社会の中にある、潜在的なひとつの「デバイド」を炙り出すと思う。