ブラウザを超えて

著者: Allison Randal

日本語訳: yomoyomo


以下の文章は、Allison Randal による Beyond the Browser の日本語訳である。

Allison Randal は Onyx Neon の創業者、社長であり、The Perl Foundation の役員を務め、またオライリーメディア社が主催する複数のカンファレンスでも共同議長を務めている。


先週 OSBC で、現在の技術トレンドに関する Radar トークを行った。昔からあるデスクトップアプリケーションが強力にネットワーク化するトレンド、Google Docs のような Web 2.0 オンラインアプリケーションは良く知られている。問題は、ウェブブラウザがアプリケーションを開発するにはひどく限定されたプラットフォームで、それに JavaScript は機能十分とはいえない言語であることだ。開発可能なアプリケーションの種類、ウェブブラウザで提供できるユーザ体験にはじめから制限があるわけだ。Flash や Silverlight といったツールキットがウェブブラウザにより多くの機能性を詰め込もうとしているが、やはり十分に統合されたデスクトップ体験を提供することはできない。いつでも100%ネットワークにつながった至福というのは、世界で最も技術的に進んだ地域においてさえ現実には程遠いという事実を付け加えておこう。これが、Google スプレッドシートが「つながるのを待つ」ために頻繁にコーヒーブレイクを強いられた経験のある人なら誰でも認める、純粋なウェブブラウザアプリケーションに顕著なユーザビリティの問題につながる。

未来の波は、ウェブブラウザアプリケーションにはない。その代わりに我々は一周してデスクトップアプリケーションへに回帰しつつあるのだが、今回は外の世界への接続のない単一ユーザ用の自己中心的なアプリケーションという古臭い考えは捨てている。未来の波は、ブラウザと同じくらい強力にネットワーク化された、我々がブラウザアプリケーションに期待するようになった Web 2.0 の流儀である。iTunes はこれの典型例で、いつでも利用できるオフラインコンポーネントと、ネットワーク接続すれば利用できるシームレスに統合されたオンラインコンポーネントの両方を備えている。

Songbird on Fluxblog

Songbird は iTunes よりずっと優れた例である。Songbird は Mozilla アプリケーションフレームワーク上に構築されたオープンソースのメディアプレイヤーだが、ブラウザ内で動作するのでなく、実際にはデスクトップアプリケーションの中に軽量ブラウザを組み込んでいる。iTunes 同様、Songbird は局所的なデスクトップメディアプレイヤー、メディアライブラリオーガナイザ、そしてメディアデバイスマネージャとして動作し、オンラインの音楽/映画を購入してライブラリに追加もできる。ただし Songbird は iTunes 以上の働きもする。ブラウザが組み込まれているということは、特定企業の専用ストアページだけでなく、どのウェブサイトにも飛べるということだ。メディアファイルへのリンクのあるサイトに行き当たると、Songbird はそのページのすべてのメディアのプレイリストを作成する。つまり音楽ブログをネットサーフィンできれば、そのブログを読みながら仮想プレイリストを聞けるわけだ。単純な「ライブラリに追加」ボタンでそのオンラインプレイリストからライブラリに曲を追加できるので、Songbird は再び見つけられるように、ネットサーフィンしている間に遭遇した音楽の「ウェブライブラリ」を維持する。

これからの数年を考えれば、Linux を独占的なオペレーティングシステムの完璧な代替品にする重要なステップの一つは、あといくつか欠けているデスクトップでの生産性アプリケーションを埋めることだ。つまりカレンダー、コンタクト管理、プロジェクト管理ツール、PDA/携帯電話/ラップトップの同期などである。様々な残された溝に取り組むいろんなプロジェクトがあるが、有力者として際立つものはなく、十分に統合されたやり方で問題にアプローチするものもない。私としては、軽量でネットワーク対応のデスクトップアプリケーションのアプローチがこれらの残された溝に適用されるのを見てみたい。私は Linux が既存の独占的なデスクトップアプリケーションの機能をコピーするものを提供するのは望まない。私が望むのは、今いる人たちが変化を恐れているところにイノベーションをもたらし、次の波を追い抜くことだ。

この領域における重要な展開と言えるのが LINA で、GPL ライセンスの元、6月には最初のリリースが行われる予定だ。私は先週水曜の OSBC の講演で LINA を取り上げたが、金曜には Linux Devices、そして日曜には Slashdot で取り上げられた。LINA は Linux 用にデスクトップアプリケーションを開発し、それを Windows、Mac OS X、そして各種 *nix 上のネイティブなルック・アンド・フィールで動作することを可能にする軽量の仮想マシンである。LINA の CEO である Nile Geisinger に、LINA に関係する技術について簡単にまとめていただいた。

あるプラットフォーム向けに書かれたアプリケーションを別のプラットフォーム上で走らせる方法は既にいくつもあります。一つはシステムコールのマッピングです。例えば、Linux システムコールの Windows システムコールへのマッピングですが、これは CYGWIN がやっています。これで Linux アプリケーションが、Linux カーネルなしでも Windows の CYGWIN において動作できます。残念ながら、システムコールは常に正確にマッピングできるわけではないので、コンパイルしたり、期待通りに動作できないアプリケーションが出てきます。仮想化はまた違ったアプローチで、これはあるオペレーティングシステム全体を別のオペレーティングシステムの上に実際に実装するわけですが、このゲストで動作するアプリケーションは、ホストのオペレーティングシステムにはまったく統合されないままに終わります。

LINA は新しいアプローチを取ります。LINA では、Linux アプリケーションは仮想マシンのクロスプラットフォーム Linux カーネル上で動作します。LINA はシステムコールのマッピングではなく、リソースマッピングを利用します。Windows ファイルシステムは Linux ファイルシステムにマッピングされ、Windows GUI API は Linux GUI API にマッピングされ、などというようになります。LINA の Linux アプリケーションから見れば、それは標準的な Linux オペレーティングシステムで動作しています。ユーザから見れば、LINA のアプリケーションは、Windows や Mac OS X のアプリケーションとまったく同じになるわけです。

LINA は Linux アプリケーション開発の狙いを変える。Linux での開発が、少数派のプラットフォームのための奉仕活動ではなく、多様なプラットフォームで広範なオーディエンスにリーチする最も簡単な方法になるのだ。

これからの5年間は面白いことになるだろう。


[翻訳文書 Index] [TOPページ]

初出公開: 2007年06月04日、 最終更新日: 2007年06月04日
著者: Allison Randal
日本語訳: yomoyomo (E-mail: ymgrtq at yamdas dot org)
Creative Commons License
This work is licensed under a Creative Commons License.