Googleリッチクライアントへの道

http://goog-ajaxslt.sourceforge.net/
GoogleオープンソースAjaxライブラリを出してきた。ついに彼らは独自のリッチクライアントへの第一歩を踏みだしてきた気がしてしかたない。かなり妄想気味だけど、GoogleAjaxな活動に関して考えていたことをまとめてみた。文章がえれー長くなってしまったので、続きを読むにしておこう。
Googleは以前からGoogle MapsGoogle suggestGmailのUI等々、Javascriptを駆使したマルチブラウザなAjaxアプリを提供し続けてきた。そのひとつひとつが、通常のHTMLじゃ得られないUIを実現していて、それぞれすごい評判をあつめている。あちこちのサイトで、「あれはどうやって実現してるんだ?」と内部動作の解析が行われるほどの勢い。恐らく、Googleはそろそろ「これでイける!」と踏んだんじゃないかな。
何がイけるかというと、まずはAjaxアプリの共通基盤を我が手で提供すること。
Ajaxという言葉がWebアプリ開発者にひとまわり周知されたこのタイミングで、オープンソース*1Ajax用のライブラリが公開されれば、Ajaxに興味を持っている多くの開発者は飛びつくだろう。当然、このライブラリを使ったアプリが量産されてくるし、ライブラリがオープンソースなだけに、現時点では対応してないブラウザへの対応や、バグフィックスなんかも勝手に行われてしまう可能性が高い。そして気がついてみれば、Googleが提供する一連の*2Ajaxライブラリは、ブラウザを越えたAjaxの基盤として確立し、ブラウザのひとつ上のレイヤーにGoogle-Ajaxレイヤとも呼ぶべきインフラが誕生する。こんにちわデファクトスタンダード
そして、彼らはそこでは止まらない。
一年くらい前から、「Googleがブラウザを作るらしい」とまことしやかに囁かれていることがどーしても思いだされる。http://d.hatena.ne.jp/sshi/20040921/p1でも書いたように、僕はそのうちGoogleはみんながたまげるようなリッチクライアントを出してくるんじゃないかと思っている。ここにきて、Google-Ajaxレイヤが来たるべきGoogleリッチクライアントへの近道に感じられてきた。
そもそも、Ajaxという概念は、乱立する「リッチクライアント」という概念を「DHTMLでもこうやりゃできるんじゃないの?」とまとめて見せたものだ。提唱された時点では、その可能性を提示しただけに過ぎなかったけど、Google-Ajaxレイヤが確立されてしまえば、自然とそれはリッチクライアントAPIとも呼べるものになってくる。来たるべきGoogleリッチクライアントを念頭に置くと、現在GoogleがやろうとしているGoogle-Ajaxレイヤの確立は、GoogleリッチクライアントAPIの予行演習、というか、APIだけを先にデファクトとして流通させてしまうことなのではないか。
例えばこんなシナリオが浮かぶ。Google-Ajaxレイヤが確立した後、突然Googleリッチクライアントなるバリバリにグラフィカルな機能を持つブラウザが公開される。それは従来のブラウザのように同期的データアクセスやしょぼいUIにとどまらず、XMLデータを非同期にやりとりする機能を持ち、グラフィカルなUIツールキットにJavascriptで簡単に振舞いを定義することができ、より柔軟なUIを提供できる。Googleは膨大なデータを元手に、リッチクライアントを使ってGmailGoogle mapsもびっくりな新しい"リッチな"検索サイトを公開する。しかも、その内部APIGoogle-Ajaxライブラリとしてすでに開発者にはおなじみなものなのだ。
通常は、新しいブラウザやアーキテクチャに対応したサイトやサービスはなかなか作られない。内部APIの学習にはコストがかかるし、学習したとしてもそのコストに見合うだけの効果が得られるかどうかわからないからだ。今現在、XULcurlに対応しているサイトがどれだけあるか考えてみればいい。そういうサイトどれくらいありますか?ところが、そのブラウザのAPIが既にみんなになじみの物だったらどうだろう。なじみのAPIに少し工夫をしてやれば、いままでにないグラフィカルなサイトができるとすれば?さらにそのAPIを使ったサイトが、Googleリッチクライアント以外の従来のブラウザでも閲覧できるとすれば?
猛烈な勢いで、Googleリッチクライアントに対応したサイトが増え、サイトの量にひっぱられてまたたく間に、Googleリッチクライアントが流行っていくんじゃないだろか。例えば、「はてな」ポータル上で便利に使える「はてなメッセンジャー」が開発されたとする。普通のブラウザでも使えるけど、より快適に使うにはGoogleリッチクライアントが必要ということになれば、マシンパワーに余裕のある人はたいていGoogleリッチクライアントをダウンロードするんじゃないだろうか。
かくして、混迷を極めるIEや合併までしたAdobeをしりめにGoogleリッチクライアントが次世代ブラウザとして君臨する。なんだか、そういう妄想がかきたてられてしまうのです。

*1:Javascriptをクローズドなまま公開するのはどだい無理めなので、オープンにはあんまり意味ないのかも

*2:これで打ちどめとは思えない。次々とAjax関連のライブラリがでてくるはずだ