l'essentiel est invisible pour les yeux

Saturday, January 26, 2008

Google Maps Recent EditのユーザインタフェースをGoogler達は不気味と思うのか?

BloggerやGoogle Mapで編集された場所のプレイスマーカーをリアルタイムで表示するGoogle Maps Recent Editが公開された。(*1) Google Maps Editの利用シーンが今ひとつピンとこないが、この眺めるユーザエクスペリエンスは、ユーザのアクション無しに画面遷移が発生する。このGoogle Maps Recent Editに不快感を覚えるのは、たとえ拡大や縮小といった操作をしている途中であっても、強制的に次のプレイスマーカーに移動させられる事だろう。

「本当に、テレビにでも移して眺めるだけのインタフェースだ!それにしては、何とも退屈な映像だ。各地の美しい写真が表示され、クリック一つで旅行プランが購入できるとか、もっと楽しませてくれ。」

少し技術的な事に触れておくと、この仕組みは、headタグ内にSCRIPTタグを書き出し、実行後に削除するJSONPで実現されている。私が閲覧したある特定の時点で挿入されたタグとスクリプトは次のような物だった。


<script id="_8fbw75xce" type="text/javascript" charset="UTF-8" src="http://maps.google.com/maps?spn=3.408051,25.905762&z=6&key=ABQIAAAAs9dcsWbbZEWT6IvNCMoH7BSEkgDlNpuQ8hYNJ6DISwGIqkxfgBSsICsDOo_i02Xr_AijoU7Ytm0KBw&vp=33.945,-118.372&ev=p">
1GAddCopyright("m","38",14.5319,-118.3835,32.7187,-86.7034,4,"LeadDog Consulting",17,true);
2GAddCopyright("m","0",22.0310,-125.2410,49.0930,-62.7100,3,"Tele Atlas",null,false);
3window.GAppFeatures && window.GAppFeatures({cb:{bounds:[{s:35920000,w:-115657000,n:36479000,e:-114940000,ix:1},{s:36880860,w:-123100000,n:38100000,e:-121560000,ix:4},{s:29243270,w:-95884552,n:30105929,e:-94744720,ix:5},{s:33441755,w:-118572692,n:34214073,e:-117630615,ix:6},{s:28029561,w:-81861877,n:29372601,e:-80570983,ix:7},{s:32528289,w:-117419128,n:33267398,e:-116926117,ix:8},{s:33255915,w:-112407989,n:33706062,e:-111524963,ix:11},{s:31755028,w:-111233825,n:32623183,e:-110727081,ix:14},{s:38903858,w:-87912597,n:40603526,e:-85281372,ix:17},{s:32537551,w:-97627258,n:33144450,e:-96193542,ix:20}]}
4,traffic:{bounds:[{s:36880860,w:-123556517,n:38677492,e:-121283388,ix:0},{s:33226755,w:-119242517,n:34879656,e:-117247509,ix:2},{s:32167236,w:-97522121,n:33388946,e:-96069044,ix:8},{s:29221411,w:-95990706,n:30299390,e:-94748951,ix:10},{s:33245614,w:-84993665,n:34251728,e:-83783641,ix:11},{s:32980558,w:-112642287,n:33914806,e:-111522608,ix:12},{s:32320421,w:-117632103,n:33110939,e:-116692535,ix:14},{s:38304167,w:-90612932,n:38950954,e:-89785013,ix:16},{s:38836989,w:-84852024,n:39375978,e:-84157427,ix:22},{s:38309558,w:-121835862,n:38848547,e:-121146396,ix:24},{s:38833546,w:-94930306,n:39372535,e:-94235744,ix:25},{s:29155076,w:-98803952,n:29694065,e:-98185137,ix:26},{s:35902370,w:-115473565,n:36441360,e:-114805879,ix:27},{s:28294050,w:-81679208,n:28833040,e:-81065525,ix:31},{s:29684310,w:-90388702,n:30223299,e:-89766620,ix:33},{s:34881558,w:-90379430,n:35420547,e:-89720226,ix:35},{s:29998136,w:-98054906,n:30537126,e:-97430845,ix:36},{s:30060762,w:-81963562,n:30599752,e:-81339102,ix:38},{s:37985442,w:-86109574,n:38524431,e:-85423194,ix:39},{s:34953025,w:-81167441,n:35492015,e:-80507657,ix:42},{s:35898587,w:-87111421,n:36437576,e:-86443767,ix:43},{s:35199588,w:-97853495,n:35738578,e:-97191695,ix:44},{s:31952018,w:-111288323,n:32491007,e:-110651215,ix:45},{s:31489703,w:-106804478,n:32028692,e:-106170573,ix:48},{s:33250782,w:-87134877,n:33789771,e:-86488367,ix:49},{s:34814680,w:-106978029,n:35353669,e:-106319366,ix:51},{s:35880282,w:-96327146,n:36419271,e:-95659649,ix:57},{s:36470939,w:-120122285,n:37009929,e:-119449686,ix:58},{s:33349843,w:-118001092,n:33888833,e:-117353839,ix:62}]}
5});
6
</script>
<script id="_9fbw75xrz" type="text/javascript" charset="UTF-8" src="http://maps.google.com/maps?spn=3.329728,25.905762&z=6&key=ABQIAAAAs9dcsWbbZEWT6IvNCMoH7BSEkgDlNpuQ8hYNJ6DISwGIqkxfgBSsICsDOo_i02Xr_AijoU7Ytm0KBw&vp=35.85344,-118.366699&ev=p">
</script>



JSONPによるリアルタイム更新を、cometもしくは、ポーリングによって実現している。
リアルタイムと唄っているが、完全にサーバーサイドからのイベント通知だろうか?その場合は、更新数が多くなった時にクライアントの画面の更新が追いつかないので、おそらくは一定時間毎のポーリングだろう。実際にサイトを見ても、ほぼ、5〜6秒毎に画面が切り替わる。ソースコードを追えば分かるかもしれないが、ObfuscateされたGoogleのJavascriptを読むのは、体力を消費するので辞めておくが、ポーリングとみて間違いなさそうだ。

私が気になるのは、サーバーサイドからのイベント通知(つまりCOMET)かポーリングかという技術的な問題ではない。最も重要な事は、これまで画面の遷移や制御は、ユーザ主導型だったが、ユーザが見ている画面の制御がユーザ + サーバによる制御に移行しようとしている事だ。これは大きな論点になるだろう。このブログで、Young risk taker.: 2008年のWEBはハイブリッド型にという記事を書いたが、この記事中ではWHATWGのHTML5ドラフトとGoogleの取り組み、私の予想などを書いた。

サーバー側から画面の制御ができる事と画面の向こう側に人気を感じさせる試みは、技術的には非常に興味深い。コンピュータリソースだけでなく、WEBもクラウド型になり、これまでサーバ/クライアントアーキテクチャだったのが、サーバーを介したクライアント to クライアントへとなり、ますます複雑なネットワークへと変化していくだろう。

サーバー側に画面の制御が委ねられている事は、ユーザの興味が変化した瞬間に広告をそれに適したものにリプレイスする事ができるかもしれないし、よりユーザの利便性を追求する事につながると私は信じている。私は、楽観主義者だが、サーバー側からのクライアントの制御(自由にコードを送り込み実行させることのできる)は、大きな嫌悪感をユーザに与え、一部のコラムニストや団体が騒ぎたてるだろうと考えている。Gmailの時に、メールスキャニングで騒いだのと同じように。

結局は、この技術が人々の生活に無くてはならないイネビタブルズ(キラーアプリ)を生み出すかどうか?で全ては決まるだろう。技術の可能性だけに溺れ、中途半端でユーザ中心主義でない、アプリケーションは死滅する。ブラウザを通じて表示されている画面は、無機質なプログラムではなく、向こう側には、人がいて、人と人のコミュニケーションをより快適にするためにこれらの技術が開発されていくだろう。

私も昨年から、ユーザ + サーバによる制御される画面のユーザエクスペリエンスと、それらの技術の基盤の上に構築されるアプリケーションについて頭をひねってきた。21世紀を生きる私達は、常に大きなチャンスが横を通り過ぎている状態の中にいる。しかし、大抵の人はチャンスに気づかない。流れに身を任せる。

「世界中のあらゆる情報を探し出せる、高機能な検索エンジンを作りたい」とユーザ(創業者自身)のニーズを中心に添えた、GoogleがGoogleブランドを構築したように、21世紀に存在する、変革しなければいけない、もしくはまだ議論されていない大きな問題は何なのか?を常にユーザ中心に考えて実行に移せば、21世紀史における重要人物となれるかもしれない。

参考

  1. Making changes
  2. Google Maps Turns Recent Edits Into Voyeuristic Experience
  3. Google Gets Voyeuristic, Shows the World Some Hardcore Pornography in Real Time