October 26, 2004

ブラウザ再考(7)

丁度良いタイミングでFirefoxの開発責任者であるBen Goodgerに対するCNETのインタビュー記事が掲載されています。

--Mozillaが描くブラウザやブラウザスイートのビジョンはNetscapeが10年前に発表したものとどのように異なりますか。

 様々な点で異なります。Mozillaが現在描いているブラウザのビジョンは便利なブラウザを開発するというNetscapeの当初の目標と似ています。我々が推進しているビジョンは、便利なブラウザアプリ、便利なメールアプリなどを1つずつ開発していくという発想に基づいています。オールインワン(一体型)のスイートの開発は行ないません。それでは、Netscapeの晩年の二の舞になってしまいますからね。Netscapeは1994年当時、ウェブが向かっている方向性を見抜けなかったのです。

 後から振り返ると、我々はこの単純なビジョンを1つのブラウザとして具体化することに成功したことがわかります。このブラウザでは、統合型検索エンジンを使用することによって簡単に検索を実行でき、またポップアップのような妨げになるものを減らし、さらに、新技術を使用したりユーザビリティを考えることによって、人々がこれらの機能やウェブコンテンツをより効率的に利用できるようになっています。

Firefoxが、私の言う「新OSレイヤー」としてのブラウザであるのかどうか。もう少し業務アプリケーションレベルで検証される必要がありますが、Goodger自身は、「ブラウザアプリ」「メールアプリ」と表現しているように、ブラウザとアプリケーションを明確に区別して考えていないようです。「1つずつ開発していくという発想(our vision moving forward is based on that--a useful browser application, a useful mail application and so on)」が、結果的にブラウザのOS化を実現しているのかも知れませんが。

更に、このインタビュー記事(1/2)の中に、興味深いやりとりがあります。

--Longhornと張り合うのに、それで十分でしょうか。あちらはオペレーティングシステム(OS)とブラウザの統合という壮大な計画を進めていますが。

 我々は(Longhornに)太刀打ちできると考えています。我々は、例えばハードウェア・アクセラレーションや、新しい機能を有効に活用するために、グラフィックシステムを作り直しています。

--あなたはLonghornにほとんど無頓着なようですが、それはLonghornの開発がスケジュールよりも大幅に遅れているからですか。それとも、Longhornの登場後もスタンドアロンのブラウザが優位を保つと考えているからですか。

 LonghornはMicrosoftにとって販売しづらい商品になるでしょう。Longhornは古いタイプのハードウェア上ではうまく動作しませんが、企業にはそのような古いマシンがたくさんあります。企業に対して、これこれの費用をかけてWindowsを最新バージョンにアップデートする必要がある、またハードウェアも一緒にアップグレードしなくてはならないと言っても、顧客の側では手持ちのアプリケーションの新バージョンが動かせるようになるだけですから、これは高くつくことでしょう。

--それでも、Longhornの影響が出始めるのは、それほど先のことではないはずです。いまでさえ、XAMLを使ってアプリケーションを開発している企業があるくらいですから。

 XAMLアプリを開発している企業の数とウェブアプリを開発している企業の数には、かなりの開きがあります。Mozillaを創設したエンジニアのBrendan Eichの言葉を借りれば、「ブラウザは復活する。ウェブアプリの世界ではLonghornは重要ではない」ということになります。

--Microsoftが今後スタンドアロンのIEをリリースしないと決断したことによって、Mozillaにはどのような影響がありますか。

 ユーザーがウェブブラウザを通じて得る経験を大いに改善したいと考えた時に、Microsoftをあてにはできないということがはっきりしました。我々(のブラウザ)はIEに代わる選択肢の1つです。我々はブラウザを無料で提供していますが、そのことも有利に働いています。

このやりとりの中に、新OSレイヤーとしてのブラウザの設計上の問題がいくつかあります。

まずここに書かれているようにIEのOSへの統合化(OSのブラウザ化)です。マイクロソフトの方法は、オフラインとオンラインのアプリケーションを統合化したXAML(ザムル)アプリケーションと言う形で、Longhorn自体にブラウザ機能を持たせると言う、いかにもビルゲイツが好むWindows中心の考え方です。確かにこの方法であれば独禁法に抵触しないかも知れませんが、果たしてこの方法に将来性はあるのでしょうか。

こんな大仕掛けでなくても、世の中には既にビズブラウザと言うオンライン、オフラインの統合環境を提供する技術があります。ビズブラウザに欠けているのはアニメーションやグラフィックスですが、こちらは既にフラッシュ環境があります。

こう言った動きを見ていると、マイクロソフトは、その昔IBMがOS/2で犯した過ちを、自ら回避した道で再び歩もうとしているように見えてきます。アプリケーションを使用する側からのキーポイントは、キーボードからの入力スピードと動画を含めたグラフィックスの描画性能以外ありませんし、これ以上でも以下でもないのです。これをOSのブラウザ化と言う名目で「ルールを変えよう」とするのは、Windows至上主義と批判されても致し方ありません。

とは言え、次に想定しないと行けないのは、まず間違いなくLonghornは市場に出てくるでしょうから、この中途半端なOSの上で新OSレイヤーとしてのブラウザをいかに動作させるかです。当然上位互換と言うことで、今までのWindowsアプリはそのままでも動作しますから、一見心配ないようにも思えますが、今後はウェブアプリだけでなくXAMLアプリ自体もサポートしなければ、皆、Longhornでブラウズするしかなくなります。

これはあたかもVHSかベータかで争ったと同じ規格戦争と言えなくもありません。

一旦Javaのライセンス問題で敗れたマイクロソフトが、XAMLをひっさげて再び戦いを挑もうとする構図です。ブラウザの未来形の実像がいよいよ見えてきました。 KAI

October 23, 2004

ブラウザ再考(6)

いよいよ新OSレイヤーとしてのブラウザーのスペックの議論に入ります。

ポイントは、デスクトップと言うクラスを設け、ブラウザはそのクラスをネイティブなOSのAPIでインスタンス化すると言う仕掛けを提供すれば、かなりの部分は解決します。

しかし根本のところで問題があります。オブジェクト指向と言う概念は、ある意味でOSと言う概念と相反するからです。現在のブラウザの問題も、この役割分担の不明瞭さゆえに、結果的にアプリケーション側にしわよせが集中しています。理想を言えば、オブジェクトで解決するためには、オブジェクトをネイティブで駆動するエンジンであるOSがリリースされ、ブラウザはそのデスクトップクラスのみ処理すればいいのです。

もう少し議論を進めるつもりでしたが週末で少々アルコールが入ってしまって、一旦アップします。 KAI

October 20, 2004

ブラウザ再考(5)

ウェブトップの考え方との違い

前回の最後で、

こう言った仕様の部分は、W3C等の標準化で実現されていくのではなく、新OSレイヤーとしての機能を持つブラウザが、必ず近いうちにどこかのベンダーから供給され、それがデファクトに なって普及していくというシナリオを考えています。

と書きましたが、私なりにもう少し技術的に詳細な検討を続けます。

さて、前回のような書き方をすると、Java陣営から『そんなこととっくの昔にウェブトップの概念で説明している』と反撃を喰らいそうです。

しかし私の言う「新OSレイヤー」と「ウェブトップ」の概念は似ていて全く非なるものです。

前回からの引用ですが、

その昔、DOSと呼ばれるOSがありましたが、このDOSの「D」はDISKの頭文字です。DOSが現れるまではBASICと言う言語が直接DISK(ディスク装置)の入出力を司っていましたが、DOSの登場で入出力はOSと言うレイヤーが分担するようになりました。

インターネットを、ここで言うDISKと見なすと、BASICに相当するのがHTMLと言う言語をインタープ
リットする、今あるブラウザと言うアナロジーが成り立ちます。このアナロジーから以下のようなことが言えるのではないかと考えています。

このアナロジーをそのまま使うと、ウェブトップの概念は単に初期のBASICが単にJavaに変わっただけと見えます。

この意味を説明しましょう。

例えば業務アプリケーションにおいてキーボードだけでの入力業務は必須かつ業務の中心ですが、これをWebで構築することを考えた途端、たちまち行き詰まってしまいます。JavaScriptで構築しようとしたことがある人は泣いたはずですが、Javaアプレットに至っては遅くて使い物になりません。

なぜか。Javaでは、本来OSが分担すべき入出力の部分が、依然としてコンポーネントと称するアプリケーション側にあるからです。WindowsのアプリケーションがAPIと呼ぶOS機能とのインターフェイスを介して入出力を行うのと比較すれば、その性能の差は歴然です。

こう言ったことを検討していくと、様々な形でブラウザの未来形が見えてくる、と言うのが今回のエントリーのメインテーマです。 KAI

October 18, 2004

ブラウザ再考(4)

またまた絶妙のタイミングで、自社OSのデバイス(ドライバ)化を嫌うマイクロソフトの立場を解説した記事が、「マイクロソフトはIEを消滅させるのか」と言うタイトルでCNETに掲載されています。

その昔、DOSと呼ばれるOSがありましたが、このDOSの「D」はDISKの頭文字です。DOSが現れるまではBASICと言う言語が直接DISK(ディスク装置)の入出力を司っていましたが、DOSの登場で入出力はOSと言うレイヤーが分担するようになりました。

インターネットを、ここで言うDISKと見なすと、BASICに相当するのがHTMLと言う言語をインタープリットする、今あるブラウザと言うアナロジーが成り立ちます。このアナロジーから以下のようなことが言えるのではないかと考えています。

すなわち、BASICの中にあったDISKアクセス機能(を含めたOS機能)をDOSと言うOSに分離したように、ブラウザの中にある言語(解釈)機能とインターネットのアクセス機能を含めた実行機能を分離して、あらためてブラウザをインターネットアクセスのための新OSレイヤーと再定義することで、ブラウザの未来形に必要な機能が見えてきます。

具体的には、Webサーバー側にブラウザの実行時処理環境を常駐させ、インターネットを介して受け渡しをする情報は、実行時処理環境の制御情報とそのためのデータに限るとするのです。実はビズブラウザの技術もよく似た仕掛けになるのですが、これを最初からブラウザそのものの機能として実装すればいいのです。同様に、メッセンジャー機能や印刷機能、メール機能、RSS機能等のエンジン部分は、すべて最初から実装します。

こう言った仕様の部分は、W3C等の標準化で実現されていくのではなく、新OSレイヤーとしての機能を持つブラウザが、必ず近いうちにどこかのベンダーから供給され、それがデファクトになって普及していくというシナリオを考えています。 KAI

先に技術的にフラッシュプレイヤーとよく似たと書きましたが、誤解を与える書き方でしたので、上記のように訂正しました。

October 15, 2004

ブラウザ再考(3)

このところ週一ペースに落ちてきてますが、ブラウザの議論を続けます。

絶妙のタイミングでCNETに「グーグル、デスクトップ検索に一番乗り--Google Desktop Searchを公開」の記事が掲載されました。

記事の中に次のような記述があります。

 検索業界の専門家で「SearchEngineWatch.com」編集者のDanny Sullivanは、「Googleはライバルを出し抜いただけでなく、競争のルールも変えてしまった」と述べている。「彼らは、『我々は検索をOSの一部にしているのではない。デスクトップをGoogleの一部にしているのだ』と話している」(Sullivan)

デスクトップの上にブラウザがあるのではなく、ブラウザ(サーチ)の中にデスクトップが入ってしまったと言うわけです。

この一連の議論の前回の中で、

それがここにきて、ブラウザがここで言う従来からのOSとしての機能を分担し始めたと言うことを理解する必要があります。

と書きましたが、今回のGoogleのデスクトップサーチはこれの象徴的出来事になります。

すでに今までも、セキュリティソフトベンダーのホームページでは、オンラインのウィルススキャンによって限られた用途ではありますがデスクトップサーチは実現されていました。こう言ったソフトは、デスクトップからサーバーへと言う今までのアプリケーションの動作とはまったく逆で、サーバーからデスクトップへと言う方向性を持っています。

こう言ったタイプのアプリケーションの可能性については既に議論した通りですが、これらのことからブラウザの未来形が見えて来るというのが、今回のエントリーの本題です。

と書きましたが時間切れにつき続きは次回に。 KAI

追加です。

デスクトップと言う主役からブラウザと言う主役へ移行することで、マイクロソフトが1デバイスメーカー化する可能性が充分あります。

PC本体がデバイスの一部とみなすと、すべてのコンダクターであるOS、つまり、ブラウザの配下にPC本体がコントロールされるようになります。

技術論的に考えれば、ブラウザと言うOSと言うレイヤーの誕生です。

今後は、従来のWindowsのようなOSは、CPUと言う「デバイス」のドライバー化すると言えばわかりやすいでしょう。

October 05, 2004

Googleの本質

ブラウザの話しとも関連する内容です。久しぶりに梅田さんのBlogから引用します。タイトルが「Amazon、Yahoo!、eBayと楽天は何が違うのか」。

ここで再び、「e-Japan時代の情報政策(下):情報家電産業の課題:経済産業省 村上敬亮氏」の1ページ目の下の図を、クリックしてみてください。Amazon、Yahoo!、eBay、楽天といった、創業からそろそろ10年が経過しようとするネット企業・第一世代にとっては、ネット産業を横にレイヤー分けするこの図がしっくりと来るのである。

垂直統合モデルに回帰するGoogle

でもGoogleは違う。ここを縦に切るのである。

自らが保有する戦略技術がなければ絶対に提供できないサービスを構想する。水平分業から垂直統合への回帰を、Googleは仕掛けようとしているのである。ここがGoogleのユニークさであり、破壊的イノベータである所以だ。僕が先週のエントリーで、「Googleをこそ突然変異だと見るほうが自然かもしれない」と書いたのは、そういう意味である。だからこそGoogleに破壊される可能性が最も高いYahoo!が、最も強い危機感を抱いて、数千億円規模の投資をしてサーチエンジンの会社を買い集め、Googleと同じようなコスト構想を実現できるバックエンドのシステムの構築に乗り出したわけだ。Amazonの危機感はYahoo!よりはちょっと薄いけれど(事業の競争優位が、よりライフソリューション層に寄っているから危機感は少し希薄になる)、A9くらいの投資はする。eBayはオークションというもっと特殊なライフソリューション層での競争優位を確立しているから、あまりGoogleに対する危機意識はない。今のネット産業の最先端は、そんな構図で動いているのだと思う。

またまたタイトルと引用部分の中身が全然違いますが(笑)。

しかし、この観点は見事です。

ほとんどの人はこのGoogleの優位性に気づいていません。特にサービス指向の企業ほど、今そのレイヤーで儲かっていると言う理由だけで、自分たちが選択しているビジネスモデルが正しいと判断してしまいがちです。

Googleの技術は、私のレポート「64ビットマシンの世界」の中で触れているように、通信がテラバイト化する時代になればなるほど益々重要な意味を持ってきます。

具体的に説明しましょう。

Googleの技術の本質は、「ブラウザ+HTML+アプリケーションサーバー+データベースサーバー+ファイルシステム」の後に既存のOS(オペレーティングシステム)を位置づけたことにあります。この中の「+」で表現している部分がネットワーク(通信)になりますが、ネットワークスピードは技術の市場原理で黙っていても速くなります。従って、これらのエレメント技術を自社で握ってさえいれば放っておいても自社技術のトータルのパフォーマンスが向上していくのです。更に、ハードウェアにおいてさえ著しくファームウェアと言うソフトウェアに依存するRAIDを捨て、コモディティ化したハードディスクしか採用していません。

これに対して、楽天を初めとしたネット企業の技術の大半は、Oracleであるとかマイクロソフトであるとかと言う企業に首根っこを押さえられているのです。例えOSSを採用していても自らその技術をコントロールできるわけではありませんので、結果は同じです。

つまり、Googleの技術をサーチの技術と見なすと本質を見誤ると言うことです。

この技術があるからこそレイヤーを「縦に切る」ことができるのです。

ここで言うレイヤーは、今まで何度も取り上げてきたKAIモデルのレイヤーと、結果的に共通した概念になります。KAIモデルによるこれからのソフトアセットとは、より上位のレイヤー「業界」の大半の機能を、一番下位のレイヤーまで一気通貫で実現することであると言う考え方です。この考え方の意味はまた別の機会に説明したいと思いますが、いずれにせよレイヤーを「縦に切る」ためには、それぞれのレイヤーにおける要素技術を押さえていないことには話しにならないと言うことです。一見アプリケーションというものはその表面的な仕様(いわゆる外部スペック)と呼ばれる技術を押さえていれば実現できそうに思えるのですが、全くそうではありません。

以前江島さんのBlog「データの連続性とプロセスの非連続性」に対して、以下のようなコメントをしました。

アプリケーションという抽象的概念は、プログラムという実装で、解釈という多義性を免れることができます。同様に、プロセスやデータのモデリングも、プログラムの実装抜きでは単なる言葉の遊びに過ぎません。

また、プログラムの実装は、そのプログラムを動作させるためのハードウェアおよびソフトウェアの仕掛けあるいは性能に依存し、よってその制約を厳しく受けることになります。それがまた、抽象化の概念に跳ね返り、モデリングの概念を規定することになります。つまり、モデリングとはそれ自身が単体で存在できるわけではなく、その実装技術に強く依存しており、結果、技術の進歩の影響を、良い意味でも悪い意味でも強く受けることになります。

このことは別の言い方をすると、アプリケーションの変化の直接的原因が、人間系にあるのではなく、実装技術を支える基盤技術(これを私はアプリケーションの最適環境と呼んでいます)側の変化にあることを意味していると言えます。

人間系が原因だと考える立場の人は、世の中の変化や経営状況が外部要因となってアプリケーションに新たな機能が追加されたり、逆に機能不足になると考えがちです。はたして、そうでしょうか。

業務系のアプリケーションの必須要件は、データの一元管理とリアルタイム処理であると、私は常々申し上げてきましたが、これを実現するのはたやすいことではありません。同一エリア上ならそれほど問題にならないものが、多地点、複数拠点で業務を行おうとすると、たちまち技術上、経済上の制約を受けることは今更説明の余地はないでしょう。つまり、今までのアプリケーションというのは、結局、ユーザーのニーズを100%満たすようなものはほぼ存在せず(予算が潤沢な団体は別にして)、今回のインターネットの普及に伴うような「最適環境」の劇的変化に遭遇して初めて、たちまち本来のニーズに向けた開発が始まるというのが、実相ではないでしょうか。

ここで言うところの「最適環境」自体を、自らの力で構築できる技術を持っているのと、持っていないのでは天地ほどの開きがあります。

最終的にYahoo!がこの認識でいるのかどうかはまだ疑わしいところがありますが、この観点から見ると自ずと生き残るネット企業がどこか分かるような気がします。 KAI