2004-06-13

近況

本棚を買い, 段ボールに眠る不憫な書籍達を一年振りにとりだした. 棚の組み立てには同僚の協力を得るも苦戦し, 通販家具の安さは人件費相当なのだと思い知る.

この本棚は 15 のブロックから成る. ブロック毎に分野をふりわけていくと自分の嗜好がわかって面白い. 計算機関係が 4/15, 小説や文学寄りなものが 4/15, コミックが 4/15, 科学読み物, 実用書, 教科書がそれぞれ 1/15. 思っていたよりコミックが多く計算機資料が少い. 物事を定量的に観測することは意味がある. 確かに.

Web Application

XAMLFlex の流れをうけ, client side の Web 技術に注目が集まっている. Rich Client という言葉には手垢がつきすぎたのか, 最近は同じものをWeb Application と呼ぶ. ただし "Web Application" と言った場合, 今までの server centric な Web Application も含む. Rich Client 技術を "Web Application" と呼ぶ意図は,より強力な aplication 記述能力を client に持たせようということ.

先行する専有的な Web Application 技術に対抗すべく, 標準化団体の活動も始まった. "The W3C Workshop on Web Applications and Compound Documents" がその手始めだと思っていい. Adobe が主催したこの Workshop を支配する意見はこういうものだ: HTML だけで Web Application を作るのは限界だ. SVG や XForms といったより強力な技術を組合せて次世代 Web Application 環境の標準を作ろう.

参加企業の一覧を見れば, こんな主張が支配的なのに合点がいく. Adobe は SVG の editor であり, IBM は XForms の editor だ. 他の参加企業のいくつかも, 非 HTML を指向している. 皆 Internet Expolorer 主導による Web の発展は気に喰わない. Flash の広まりにも. 標準を盾にこれらの主流と渡りあいたいというのが, 彼らの(おそらく唯一の)確かな合意点. (position papers に目を通した感じでは, XHTML, SVG, XForms あたりの W3C 仕様を組合せて使うという点でおおよその合意があるようには見える.)

W3C にとっては分の悪いゲームだ. 関係者の多さから, 彼らが利害関係の調整を終えはっきりとした道標を打ち出すのはだいぶ先になるだろう. 一方, Microsoft (彼らも一応この Workshop に参加している) には余裕がある[1, 2]. 彼らは既に独自の技術を開発, 実効性を示しつつあるからだ. Macromedia の立場も同様だろう. 結局, W3C は追う側に立っている. にもかかわらず, 標準化特有の動きの鈍さを抱えている. 二重苦.

二重苦どころか三重苦かも知れない. heavyweight な仕様である SVG や XForms のアプリケーションをまともな参照実装がない状況で互換性を保ちながら開発する困難は想像できる. 不可能と言っても良い. これまでの一般的な Internet 標準と違い, SVG や XForms など最近の W3C 仕様は実装不在のまま欲望に委せて仕様を広げる傾向がある. だから誰にも実装できない最大公約数のような仕様ができあがり, 各社が気ままな subset を実装する. そこに相互運用性はない. 標準を採用する利点はない. たとえば HTML に standard としての意味があったのは, 各実装がそれなりに互換だったからだ. (非互換の部分は主に標準の外側だった.) たとえば XML の価値は, その相互運用性の高さにある. 標準それ自体に価値はない, 互換性があるから標準は意味を持つ. この忘れがちながらあたりまえの事実を軽視する標準化に未来はない.

ただ, 過ちを犯さないのは標準の恩恵を身を持って知っている者だけだ. Opera と Mozilla は Adobe ら W3C 系 Web Application 路線に反旗を翻した. そして WHATWG : Web Hypertext Applications Technology Working Group が誕生する. 彼らはこう主張する: 互換性を重視せよ. そのための現実的な方法は, 既に互換性のある仕様を拡張することだ. だから HTML を拡張しよう.

ブラウザ屋という彼らの立場を考えればこれは当然の主張だ. それを差し引いても WHATWG の主張は妥当なものに思える. 結局, 互換性は標準化の大前提だからだ. そう考えると, 次の論点は魅力的な Web Application を作るのに十分な HTML の拡張はあるかというところになる. それを検証するために, まず Web Application に必要な機能が何かを考えてみるところから始めたい. (つづくかも.)