garbagetown

個人の日記です

google wave

世間様が盛り上がっているので、いつもの如く己が分もわきまえず中途半端に食い付いてみたいと思います。
まずは以下の動画をどうぞ。二時間あるけどな。

google wave

ぼくの死んだ魚のように濁った目には、google wave は「ライブ・コミュニケーション・プラットフォーム」であると映りました。
はじめに、方々で言われている「リアルタイム」という言葉を使いたくないのは、別に同期処理ばかりが google wave の特徴ではないからです。各ユーザが好きなときに好きなように活き活きとコミュニケーションを取れるという意味で、「ライブ」の方が適切に感じます。
次に、google wave がコミュニケーションのためのツールであることは間違い無さそうです。森の大きなお友達くらいしかお話しする相手がいない場合、google wave による恩恵はほとんど享受できないでしょう。
最後に、google wave はプラットフォームであるという点も魅力的です。google waveapache 2.0 ライセンスにてオープンソース化される見通しで、google wave api を使って作ったアプリケーションなりサービスなりガジェットなり、とにかく "wave" と呼ばれる何かを、自由に立ち上げた wave サーバで提供することができます。

google wave != sns

コミュニケーションツールと言うと sns がアタマに浮かびますが、google wavesns と何か関係があるものなのでしょうか。
sns は、現実世界の人間関係を web に持ち込み、さらに web の特徴を活かして見知らぬ人間同士を引き合わせ、コミュニティを拡大していくサービスだと思います。
一方、google wave はコミュニティ上のユーザがコミュニケーションを楽しむための仕組みです。
ですので、opensocial なり mixi なりで構築・拡大したコミュニティにおいて、必要に応じて wave を利用すれば良く、google wave そのものが sns であるとは思いません。

XMPP + comet ?

非常にインパクトが強いため、必要以上に取り沙汰されている超高品質な同期通信は、どのように実現されているのでしょうか。
ぼくのツルツルの脳味噌ではさっぱり分かりませんでした。wave サーバ同士は XMPP で通信するようなのですが、最終的にブラウザに反映する仕組みが分かりません。そもそも XMPP がよく分かっていない。
仮に comet でブラウザにプッシュするとなると、スケールに大きな壁を残すことになるような気がします。例えば社内インフラに google wave を導入したとして、1,000 名からのユーザが HTTP コネクションを張りっ放しにする様子を想像すると、既存の http サーバソフトウェアをフロントに置く対応は厳しいと思います。
まあ、そのときは google がすごいサーバを作ってくれるか、どこかの天才が mod_comet とか開発してくれるのかもしれません。

雑感

敢えて google wave のリアルタイム性に注目すると、友人と文字列だけのチャットよりも高度なコミュニケーションを取りたい、というコンセプトは、groove や potluck が目指したことでもあります。
当時、groove は microsoft に飼い殺しにされ、potluck はゴミ野郎の技術力的限界とインフラ事情に阻まれて、その夢を達成できなかったわけですが、google wave が充分に普及すれば、potluck が potluck on wave として復活することも充分に考えられるわけで、個人的にはこういった側面からも google wave を応援したいと考えています。
また、potluck は中央集権に対するレジスタンス的コンセプトを持っており、これは専用サーバを必要とするように見える google wave とやや相反しますが、例えば超軽量かつアドホックにネットワークを構築できる wave サーバントなんてものがあれば、ある日ある時、街角で見知らぬ人と wave で一つの音楽を楽しみ、感想を共有できたりするかもしれません。
なんてことを妄想しつつ、しばらくは google wave の動向に気を付けようと思います。