これは、自分の辿ったWeb上での足どり(どのページを見て、リンクを辿ってどのページに移ったか)の情報を、自動的に記録し、二次元的に履歴化するソフトウェアです。
ダンジョンもののゲームで見られるオートマッピングのように自動的に地図状に記録していくということで、「Web Map」と名付けました。コンセプトは、「WWWの自分地図を作る」です。
1993年に発表されたMosaic以降、Hot Java、Netscape、Internet Explorer、いずれも「戻る」「進む」という形で履歴を一次元的に扱うインターフェースを踏襲してきました。Operaの「早送り」「巻き戻し」も、根本的にはこの一次元への呪縛からは逃れられていません。グラフィカルなWebブラウザのGUIはこの10年、本質的には進歩していないと言えるでしょう。(参考:もしNetscapeが勝っていたら……?(ITmedia News)、Browser Museum)
しかしながら、WWWは、リンクによって各々が二次元、三次元、あるいは四次元的に縦横無尽に連結された文書同士を辿っていくという、ハイパーテキストそのものです。利用者が形成するWWWそのもののメンタルモデルも、本来はそのような形になっているはずです。そのメンタルモデルと、前述の一次元的なユーザーインターフェースとの間には大きな隔たりがあると言わざるを得ません。
あるいは、現状が「戻る」「進む」という一次元のインターフェースであるため、初めてブラウザを利用するユーザは、WWWについて一次元的な誤ったメンタルモデルを形成してしまいかねません。その結果として、WWWならではの自由なブラウズに戸惑いを覚え、一次元的な使い方しかできなくなってしまうとしたら、webを活用できないという意味で、その人にとって大きな損失です。
ユーザーインターフェース設計においては、利用者に正しいメンタルモデルを形成してもらうこと、そして、そのメンタルモデルを形成しやすい形状を備えることが重要です。
しかるに、先進的なWWWブラウザのユーザーインターフェースも、一次元的なものではなく、二次元、三次元的なものであるべきなのではないでしょうか。
メタファを使うことによって、敢えて誤ったメンタルモデルを形成させ、それによって理解を助けるということにも、もちろん意義はあります。しかし、メタファと実際の構造との間に乖離が大きければ大きいほど、利用する上での可能性は狭まってしまいます。
Webを利用する上での可能性を最大化したい。Webを使うこと自体を、もっとワクワクするものにしたい。それが、Web Mapの開発の動機です。
この手の「Web上での足どりを視覚化する」ソフトウェアの先例としては、Galactica Proxyなどがあります。
しかし、Galactica ProxyのようにHTTPプロキシとして動作するものだと、機能としては、足どりを記録・表示するのみにならざるを得ません。逆方向の利用、すなわち、履歴を元に「以前見たページを表示する」といった機能を実用的なレベルで実現するのは難しいです。そのようなニーズを満たすためには、やはり、Webブラウザのユーザーインターフェースとしてブラウザ内部に組み込む必要があるでしょう。
かといって、全く新しくWebブラウザを開発するのも大変なことです。コンポーネント化されたWebブラウザの機能(IEコンポーネント、MozillaのGRE、SafariなどのWebKit、ほか)を利用すれば、基本的な機能を持たせることは容易ですが、フル機能のWebブラウザと同等の機能を備えるためには、やはり多大な労力が必要です。一部分のインターフェースだけは面白くても、他の部分がおざなりでは、とても実用的なブラウザとは言えないでしょう。また、セキュリティ面にまで配慮しだすと、もはや個人レベルの手に負えるものではありません。
Web Mapは、XULアプリケーション、つまりMozillaおよびFirefox用の拡張機能として開発されています。この開発形態には、以下のような利点があります。
「プラグイン」のようにごく限られた範囲でのみブラウザと連携するのではない、「拡張」という独特の形態は、開発の手間の軽減のみならず、利用者にとっての利便にも繋がります。これは、非常に興味深いことだと思います。
Web Mapで形成される履歴の姿は、誰が使っても同じになるということはなく、利用者のWebの利用の仕方が如実に反映されます。ブックマークしたサイトを見ることが多い人は孤立したノードが増えていくでしょうし、ポータルサイトをよく利用する人は、ポータルサイトの周辺にノードが増えていくことでしょう。
また、ノードの配置を自分で動かすことができるため、自分の見やすいように、あるいは思うように、地図を作り替えることができます。「ぼくの町」「わたしの町」の地図を作るような感覚で、自分の思い描くWebの姿をそのまま形にするツールとしても、Web Mapは利用できます。
どうです、ワクワクしてきませんか?
同じドメインのページとそうでないページとでノード間の自動配置の距離を変えることで、自然とクラスタ化がなされてくる。ただし、現状ではドメイン名のみでの判断なので、コンテンツの内容に即したクラスタ化とは言えない。
→将来的には(おそらく拡張の形で)、キーワードによるクラスタ化も行いたい。
現状では、各ノードの視覚的な識別にはfaviconを使用しているが、これをスクリーンショットに置き換えたい(というか、元々はその構想だった)。XULアプリケーションという特殊な開発形態であり、また、自分自身がプログラミングについては明るくないため、スクリーンショットを取得する方法が分かっていない。
現状では、「通った道(リンク)」のみを記録しており、先読みなどは行っていない。これは、処理が重くなるなどの問題があること、むやみやたらに先読みするのではなくメタデータなどを利用して効率的な先読みを行うためのノウハウが自分にはないことが、理由である。
→拡張としてどなたか実装してくれませんかね?