いったいなにを作ればいいのか、どんどん見えにくくなっている。
昔はインターネットはもっと面白かった。みんなそう思っているだろう。
WebMonkeyでもそうかかれていた。
しかしひさびさに面白いサイトがあると紹介している。
http://x42.com/ というサイト。
URL時計とか、URL計算機とか、IEとNetscapeで見え方が違う画像とか、
そういうったいたずらのようなものをやっている。たしかに面白い。
しかしこれを作るべきというわけでないのは当然だろう。
as we may thinkがあった。
テッド・ネルソンのxanaduがあった。
だれかがいつか実現するだろうと考えていた、オンライン情報の標準化が、
WWWによってなされた。マーク・アンドリーセンの功績というべきだろう。
いつかだれかがやると思っていたことがやられてしまった。It's done. 終り。
いまだなされてないこと。それはいわゆるサイバースペースの実現だろうか。
サイバースペース作り、world社がすごく力をいれてやっていた。
でも成功しなかった。SONYでもやっている。うまくいってない。
なにが違うのか。やはりアイロニーが足りないのではないか。
元祖WWW appのとき、Mosaicのとき、ハイパーテクストやネットワーク上の情報規格
について、アンドリーセンやバーナズリーが知らなかったはずはない。よく知ってい
た。それが目標としている世界、世界観をわかっていた。それをわかった上で、自分
が作ってるのはそういうんじゃないと思っていた。バーナーズリーは論文を共有する
ためにWWWを作った。ありとあらゆる情報ってんじゃないくて、とりあえず今目の前
の問題、地理的に離れてる研究者と論文を交換したかった。だからWWWを作った。
実はそのときすでにGopherがあった。Gopherは化学屋さん、生物屋さんに人気があり、
結構使われていた。物理屋さんはWWWを使ったかというと、どうもそうなじゃなかっ
たのでは…。Gopherは仕組みはWWWと同じようなものだったが、テキストとリンクが
分離されていた。テキストの一部にリンクを埋めこむ仕組みを内蔵していなかった。
WAISもあった。WAISの検索システムは国際規格、ANSIだっけ? になっていた。WAISは
そう、国際標準だったのだ。全文検索の規格化だった。でも消えてしまった。つまり
全文検索のプロトコルなんて規格化しなくてよかったってことなんだ。
アンドリーセンはあるとき同僚と徹底したミーティングをした。その議論から得られ
た、いまなにが必要なのかを頭に置き、3日程度でMosaicを作った。
Mosaicは、WWWを中心としていたが、実は何でも屋だった。GopherもWAISもプロトコ
ルとして内蔵していた。
Mosaicの最初のバージョンからインライン画像をサポートしていたのだったろうか。
覚えてないが、たしかそうだった気がする。とにかくこれこそが決定的だったのだと
思う。単なるハイパーテキストだったWWWが、この瞬間にハイパーメディアになった
のだった。
Mosaic2.0の誕生も重要だ。FORMをサポートした。
i-modeというのがある。HTMLのサブセットをサポートしている。サブセットだけあっ
てほとんど機能がない。太文字もない。文字の大きさも変化しない。
しかしインライン画像はある。
そして、FORMもある。
i-modeはいらない機能を徹底的に削った仕様だ。しかしFORMは残っている。
そう、FORMはHTMLにとって、削ることのできない必須機能なのだ。
Mosaic2.0は、読みこみ途中の停止機能というすばらしい機能もそなえていた。
なんのことかわからないよねぇ。Mosaic1.?は、サーバにアクセスしにいったら、
それを停止させることができなかったのだ。止めたかったらプログラムごと止めるしかない。
Mosaic2.0になって、停止ボタンがついた。止めたかったら停止ボタンを押せば、
アクセスを止めて元の状態に戻る。すばらしい!
複数同時アクセスの機能もついていた。Mosaic1.?のときは、複数の画面をだしたかっ
たら、複数プログラムを起動する。Mosaic2.0で、それをしなくてよくなった。
話がながくなってしまった。
このときのアンドリーセンの姿勢。夢のマルチメディアに対するアイロニーがあった。
夢のxanadu。今もまだ夢だ。マルチディアってなんだ? 最近耳にしなくなった。
それはどうでもいい。単純に自分の手に入っている素材、規格を元にいま回りにいる同僚と
議論して、それが満足する回答をつなぎあわせで作った。
みんなが夢のスーパーカーについて議論しているときに、
彼は鉄やタイヤやエンジンをひろってきて、とりあえず走るクルマを作った。
夢は夢ってことでよくて、僕はこれに乗ってくよ。ブッブー。
て感じできわめて乗りごこちがわるいけど、走っていった。
外から見るクルマの模型に飽きてたみんなは、クルマの中から見る回りの風景にびっくりした。
クルマが重要なんじゃなかったんだ。クルマの外が重要なんじゃん。
彼がそのとき使った素材。まずWWW、Gopher、WAISがあった。それぞれちょっとづつ
機能が違うが、GopherはWWWに帰着できる。WWWのサブセットとして考えることができ
るってこと。WAISはサーバ側の機能も含んだ仕様になってるのだが、逆にいえばクラ
イアント側の仕様は、同じようにWWWに帰着できる。つまりWWWをしっかりサポートす
るブラウザーを作れば、あとの二つはそのおまけで実装できる。
あとはGIFをインラインで表示する機能。これは結構大変だったがなんとかなった。
そのころは、文字が画像の回りを回りこむなんて仕様は全然なかった。
単に大きな一つの文字が配置されてるとして、一次元的に管理することができた。
だからなんとかなった。
(余談だがマイクロソフトはこのくらいの割り切りもできなかった。ヘルプブラウザー
など。初めに考えた要求仕様が大きすぎたのだろう。)
さて一つ前に戻ってバーナーズリーのつぎはぎは、
まず文章フォーマットとしてSGMLを採用しようということ。それのDTDをきわめて乱
暴に設定し、HTMLとした。具体的にはごく普通の論文書くのに必要かなと思うタグセッ
トに、>A HREF="">をつけたしただけ。あとアンカー>A NAME="">も足したかな。HTML
文章の途中に飛ぶ機能だ。この二つ以外は乱暴ってことを除けばごく普通の論文書く
ために必要なタグだけ。>A> だけがHTMLのHTたるゆえんなのだ。
HREFはHyper Referenceの略。HTMLが論文中心だったことがよくわかるだろう。
考えてみれば当然だ。Gopherを知っていた彼はとりあえず、文章表示機能と、リンク
表示機能を統合できればそれで満足だと考えたのだろう。それ以外のメディアを統合
する必要はまったくなかった。
次にURLがある。>A HREF="">の""の中に入るものの仕様を決めた。いろいろ考えた。
単純に、ホスト名とそのホストのディレクトリー名をならべればいい。
しかしそれまでずっとUNIX界では、他のマシンの資源を指定する統一的な方法がなく、
困っていた。rcp foo:/tmp/hoge.tar /tmp/fuga.tar のような感じで指定する方法があった。
それ以外に、スーパールートといって、root(/)の上にもう一つrootがあるように
見せかける方法があった。 cp //foo/tmp/hoge.tar /tmp/fuga.tar のような感じ。
rcpの場合はrcpが特別なrコマンドとして機能し、ホスト名を分離し処理する。
スーパールートの場合はある特殊なディレクトリーとしてマッピングされ、
単なるディレクトリーと他のマシンにあるディレクトリーを統一的表記で利用できる。
システムコールのほうで違いを吸収する仕組みが裏で動いている。
ということで、後者の表記法のほうがいいと思ったのだろう。
こっちの表記方を採用することにした。あーあ。
後に彼は、これほどURLが一般的になるとわかっていたら、少なくともスラッシュス
ラッシュは使わなかっただろう、と述べた。
プロトコルの指定方法も中にいれこむことにした。前述のようにGopher,WAISという
すでに先駆者がいる。これらのプロトコルも同じ立場で引用できるようにしたい。
そのため、最初にhttp:とプロトコルを指定する指定子をつけ、常にプロトコルを明
示するようにした。ftp: gopher: wais: finger: telnet: などなどプロトコルは
たくさんあるからね。いまはほとんど使われてないけど。
そもそも最初、URLはUniversal Resource Locatorの略だった。
Universal! なんでも! だぜ。さすがに途中ではずかしくなったのだろう。
いつのまにかUniformed Resource Locatorに名前を変えていた。
Gopherの間違えた点は、ここでドキュメントセントリックな考え方を導入してしまっ
た点だ。URLの場合はきわめて単純に、ホスト名、UNIXのディレクトリー名がそのま
まくっついた形式だ。しかしGopherはある意味で真面目にリンクの可読性を考えてし
まった。HTTPだと、
/campus/lecture/math2b/resume.txt
といった感じだが、Gopherだと
/Campus Information/Lecture Information/Mathematica 2B/Resume of this Lecture
みたいな感じになる、と説明すればわかるだろうか。
リンクの中身のテキストがそのままつながるような形式だ。
そして同じサーバ内のリンク構造は、ヒエラルキーしかないのだ。
で、次にHTTP。これも相当に乱暴だ。FTPという高機能アプリが古代インターネット
時代からずっと使われてきた。でもそれを実装するの面倒くさいし、重いし、
セキュリティーホールにもなるし、もっとシンプルなやつを考えてそれをHTTPって名
前にしちゃえ。
後でHTTP/0.9という名前になった、最初のHTTPは、とにかくこれ以上できないくらい
シンプルだった。socketの作り方を学ぶとき、なにかリクエストがあると反応をかえ
すというプログラムを作る。そのプログラムにちょろっと毛がはえたものだ。
HTTP /index.html
というリクエストがきたら、ドキュメントの置かれているディレクトリーを足して、
そのファイルを返すだけ。
一応エラーかどうかを返すために、ヘッダーをつけるようにしていた。
200とか404とか一応コードを決めておいた。
状態遷移といえるようなものはない。単にリクエストとその返事があるだけ。
ここで素材はそろった。こうしてみるとバーナーズリーがたくさん決めたようだが、
徹底的にはしょれるものは、全てはしょった仕様を作っただけ。
逆にいうと、これ以上にはしょれないのはどこかを見きわめた。
にもかかわらずセンスがよかった。思いがけずかもしれないが、個々の部品がちゃん
と拡張可能にできていた。Gopherなどの先駆者がいたからできたのかもしれない。
アンドリーセンは、それに使いやすい実装をつけくわえた。
Mosaicが公開されたとき、このくらいならおれでも作れるって、回りの人はみんないっ
てたなぁ。僕は、おまえには無理だよって心の中でツッコミをいれていた。
センスの良さというのを見抜かないといけないのだ。たしかにおれでも作れると言い
たくなるような代物だった。
しかし、一番重要な鍵となるのは、何を実装しなかったのかというところなのだ。
まったく前提がなにもないところでオンライン情報システムというおおまかなテーマ
だけ与えられて、仕様を考えろといわれて、最終的にあの仕様にしぼるのは全然
簡単なことじゃない。なにを実装しなくていいのか、これを決めるのが一番大変なのだ。
そしてその次のMosaic2.0。FORMという機能が決定的だった。あたりまえすぎて強調
されないが、いまももっとも使われている機能だ。実はFORMが使われてないページと
いうのはほとんどない。表示を派手にするためのタグはたくさんあるのだが、それは
枝葉末節だ。FORMの存在はまったくWWWを別の次元のものにしたのだった。この重要
性は強調しておく。僕はFORMを自分でいじってみて、アンドリーセンには予知能力が
あるのだと感じだ。つめこみたくなる仕様はいくつもあるだろう。しかしその中で
この入力フィールドに限って仕様を実装したというのは、仕様の優先順位を決める
能力があるということだ。そしてすごく正しかった。その正しさは、予知能力といった
ほうがいい。
そしてMicrosoftとの抗争。彼はWIREDでのインタビューで、しきりとMicrosoftにつ
いて語っていた。しかしそのときはまだMicrosoftは、インターネットについてまっ
たく動いてなく、出方を決めていなかったのだ。それなのに、Microsoftとの関係が
今度もっとも重要になると、アンドリーセンはわかっていた。
話を元に戻す。
このようにこれが生まれた背景は、アイロニーのかたまりのような現象だった。
だれもすばらしいものを作ろうとしなかった。個々の部品は練習問題に毛がはえたよ
うなものだった。
さて、夢のサイバースペース、これはどうなんだろうか。world社は一生懸命やって
いた。一生懸命先を読もうとした。宣伝もうった。提携もした。商社からたくさん金
をもらった。人もたくさんやとった。プロジェクトも同じテーマで3系統くらい違う
プロジェクトを走らせた。VRMLで正面からいく玉、Doom的にチャットだけできればい
いやつ、自分で世界を作れる機能を売りにしたもの、三種類くらいの違う球種を同時
に開発していた。なるほど人が足りなくなるわけだ。数打ちゃどれか一つは当たると
思ってたのだろう。ばかだったねぇ。
Gopher in Forest というソフトがあり、これは結構感動した。
NeXTで動くソフトだった。
単純にいうと前述のGopherというシステムのブラウザー。
ブラウザーの部分はシンプルだ。とはいえGopher自体がシンプルだから十分だ。
Gopher in Forestは、そのGopherのブラウジングしていく軌跡を、
ワイヤーフレームの3Dでヴィジュアライズする。
前述のとおりGopherのサーバ構造はTree型のヒエラルキー構造だけだ。
だから一つ階層を深めるのは一つ枝をつたっていくのと同じだ。
それをまさしくワイヤーフレームのTreeの形でヴィジュアライズしている。
そのまんまやんけ、とつっこみをいれたくなるが、なにかダミーのデータをヴィジュ
アライズしているのではなく、今そこにあるサーバの構造がリアルタイムで3DのTree
になって見えているので、結構面白かったのだ。視線の移動もそれらしかったしね。
よかったのは、単にサーバのデータが3Dになるのではなく、移動の軌跡として表現し
ているところだ。最初にルートにアクセスすると枝が一段階生えた木になる。
その枝のどれかを進むと、さらに枝の先に枝がフラクタルのように表示されていく。
移動しなかったところには木は表示されない。
そしてもっと面白いのが、他のサーバへのリンク構造。一つのサーバが一つの木に対
応している。つまり他のサーバへのジャンプは、そのサーバへ文字通り飛んでいくのだ。
マトリックスのひろがるスペースを、ヒューンとつきすすむアニメーションがあるのだ。
(これについては詳しくはInterCommunicationマガジン No.3にかいてある。)
彼は次にこれを、マルチユーザー版にしようと考えていた。
他の人が動くのが見える。他の人の動きの軌跡も木となって見える。
しかし彼は作らなかった。たぶんつまらなくなってしまったのだろう。
彼は天文学を学ぶ博士過程の大学院生だった。天文学に戻ってしまったのだ。
たぶんアンドリーセンやバーナーズリーは、専攻の研究分野そのものは、
あまり優秀じゃなかったんじゃないだろうか。
だから副業であったネットワークにいれこんでしまった。
(アンドリーセンはCGのソフトを作ったりもしていた。
rayshadeというフリーレンダラーのthanks toにも名前が載っていたりした。)
僕の作品、WebHopperが、これに影響されているのはすぐにわかるだろう。
やはりこれをもう一度ほりさげていくべきなのではないか。
具体的にはGopher in ForestのWWW版、
彼が実現できなかったマルチユーザー版、
一つのサーバが一つの木に対応し、それが移動の軌跡として表現されていくというの
はすばらしい。それを拡張し、移動の量に応じて木の枝ぶりが太くなっていくとか、
枝の形が変化していくのはどうだろうか。
Gooeyというソフトがある。イスラエルの企業が開発した、あるWebページを見ている
ユーザ同士がコミュニケーションできるソフトウェアだ。
Webコンパニオンという分野といっていい。
このGooeyというソフトを開発するきっかけになったのは、藤幡研のLight on the Netだ。
岐阜ソフトピアのロビーにある。実際に行った人でも気付かなかったりするほどめだたない。
このページでLightのon, offをする。ところが同時に見ている、操作している人がいることがわかる。
彼はある絵をかこうと思ったが、その人が違うようにしてしまった。
もどかしさを感じた。その人と会話ができれば一緒に絵を作っていけるのに…。
これがGooey開発のきっかけだったという。
ネットワークのソフトでなにかいいアイデアないか。を出資者などが議論していると
きに、これがでてきて、Gooeyを開発することになった。実装は天才プログラマーと
いわれている人が一人でやったらしい。
Light on the Netは僕は直接はかかわっていないが、そのころ藤幡研でいろい
ろやっていたネット回りの実験が契機になっている。
なにぶんLight on the Netは古い作品である。つまり古いアイデアでもある。藤幡研
の内外でネット回りの実験をかさねてきて、つまりLight on the Netのアイデアは、
とりあえずもういいやと捨てさったアイデアなのだ。この先こそを探究すべきだと。
イスラエルの連中は、いまさらなにをって思うほど古いものをほじくりかえしてきて、
ビジネスにした。とにかくビジネスにしたってところが大きく違うのだ。つまんない
と捨てさったアイデアでもビジネスになる。つまんないことには変わりないけど。僕
達はされにその先を目指している。しかし僕達の考えたアイデアがイスラエルの連中
に喰い物にされてるという意識も、やはりめばえてしまうのだ。
Gooeyそのものは、たぶん失敗するだろうからいいと思うんだけど。
(この間東泉さんと話していてこの話になった。東泉さんの絵のアイデアも、広告な
どでパクられている。広告業界ってどうしてこうまったく倫理がないのだろう。
イラストレーション、絵画の世界なので単純比較はしてはいけないだろうが。)
c5というプロジェクトがある。サンフランシスコベースのグループ。学校の先生やエ
ンジニア、デザイナー、アーティストなどがあつまり、会社としてアートをやってる。
キャッチフレーズは「Theory as Product」だったか。
作っているものは、例えばサーバのIPアドレスからネットワーク上のサーバ分布の地
図を書いていく。IPアドレス地図という感じのもの。個々人のユーザのHDDの中身を
検査して、ファイルの大きさ、その大きさの分布などをデータ化して、そうやってで
きたデータを一つのアイコンのような画像としてまとめる。象形文字のような形だ。
それをネットワーク登録する。他にも空中を移動するカメラ風船を作って、ネットか
ら見られるようにするとか。(この空中風船カムは僕もやりたいと思っていた。今も
やりたい企画だ。もちろんまったく違うアイデアなのだが。)
どれもそれなりに面白いのだが、やってることは結局sensoriumみたいなもんだ。
違う種類のプロがあつまってグループを作ってるところなど。
しかし大きく違うのは会社だってところ。
こういった活動をきちんとプロフィッタブルにしたうえで継続しようとしている。
これはまったく違う点だ。
しかし逆にいえばカルフォルニアではこういうあり方しかできないんだろう。
アートをささえていく土壌というのがまったくないからだ。
日本にもないんだけどさ。
日本でも、dumbtypeのように株式会社として組織を動かしているアート集団がある。
継続的に続けていくには、会社として組織せざるを得ない。
NPOの理念的な部分は感覚的に理解できても、NPOがお金の面でどういう構造をしてい
るのかを理解するのか簡単ではない。
(そういえば、SRLも基本となる技術を特許し、そこからの収入でやっているという話を
聞いた。ものすごく面白い構造だ。)
さて、Webコンパニオンという分野は有望だろう。
Web本体は、もうとっくに安定期にはいってきた。
しかしその横にくっついて、ナビゲーションの手助けをしたりするソフトは有望だ。
Gooeyは単にWebページにチャット機能をつける!というふれこみで普及をはかってい
るが、ちょっと見方をかえると、これはどのユーザが何時何分にどこのページを見て
いたのか。どこにいって次にどこにいったのか、それを完全な形態で記録できるとい
うことなのだ。もちろんプライバシー規定があるからそのデータをそのまま利用する
ことはできないが。Gooeyには広告を表示する機能もついている。ここにそのデータ
を使っている。ゲームページをたくさん見にいくユーザになら、ゲーム関係の広告を
表示するだろう。
実はほぼ同じ仕組みをLiveDoorという無料プロバイダが提供をしている。だれがどこ
をどんなふうに見ていたのかのほぼ完全な情報が手にはいるから、その情報を使える
うまみだけでも、広告的には非常に大きい。
日本だとハイパーシステムという名前でやっていた。思いつくのがはやすぎて、つ
ぶれてしまった。これをやっていた板倉社長は、「社長失格 僕の会社がつぶれた理
由」という本をかいた。読んでみて、そりゃつぶれるわな、という気はしたが。
さてもっと見方を変えれば、たとえば上映前の映画の情報を流すページを作るとしよ
う。そのページのヒット数を監視すれば、上映前にどの映画がどのくらいヒットする
か、かなり正確な数字がつかめるはずだ。単に単一のサーバだけじゃないという強み
がある。ある特定のユーザの動きなら全て読めるのだ。普通はある単一の会社が提供
しているサーバの上のログしか利用できない。
ページ上でコミュニティを作るとか、ページ上に動きを導入するとかのアイデアをた
くさん考えていたころ思いついたアイデアでこういうものがある。ページ上で盆栽を
そだてるというもの。木のフラクタルのシミュレーションは、とてもリアルなものが
できる。そこでそれを使ったヴァーチャル盆栽。ホームページ上で育てていって、他
の人の盆栽とみくらべる。コンテストもできる。
実物の盆栽を使うというアイデアもある。ネットカメラと水やりロボットアーム、剪
定鋏ロボットとくみあわせて、実物の盆栽をネット越しに育てていく。すぐ全部切ら
れちゃうだろうけど…。
Gopher in Forestのワイヤーフレーム表示の木を、もうすこしコミカルで面白い木に
表示して、Webブラウザの横にはりつくような見た目にする。で、普段Webブラウザで
普通にWebに見ていると、その横にはりついた木が、にょこっと枝がはえる。違うペー
ジに移動する、またにょこっと枝がはえる。Webを見てないときは、デスクトップ上
に壁紙的にいるのもいいだろう。枝がたくさんになったらどうするかとか、剪定はど
うするかとか、ナヴィゲーション、視線の移動はどうするかとか、細かい問題はたく
さんあるだろう。
しかしこの感覚は他になかったもので、面白いんじゃないだろうか。Gopher in
Forestを見たころがあるって人は、あの当時でさえほとんどいなかったのだから、ほ
とんどの人にはこれは初めての感覚のはずだ。