先日、Web Directions East 2008(以下、WDE)のカンファレンスに参加してきました。詳細はカンファレンスレポートの方をご覧いただくとして、今日はそれを補完するような話題を取り上げてみたいと思います。
今回のWDEカンファレンスセッションでは、2つの共通点を見出すことができました。ひとつはJavaScript(Ajax)、Canvas、SVG、HTML 5、CSS 3など、RIA(リッチ インターネット アプリケーション)に関わるような話題が多かったこと。もうひとつは、"Proressive Enhancement"(Wikipedia)(略して"PE"とも)という考え方です。
Progressive Enhancementとは?
Progressive Enhancementとは、簡単にいえば、基本的なコンテンツや操作はすべてのターゲットユーザー(UA)に対してアクセシブルにしながら、一方でより上位の環境を持つユーザー(UA)に対しては、より充実したユーザー体験を提供するという方法に対する呼称です。意外に前からあった考え方のようで、2003年にSteven Champeon氏によって提唱されています。
WDEのDan Cederholm氏やJeremy Keith氏がいうところの"Bulletproof"も、どうやらこのProgressive Enhancementの意識が根底にあるようです。ちょうど、そのpresentation版をCederholm氏、behaviour版をKeith氏で分担したような格好になっていた感じがします。(※カンファレンスレポート(前編)は、このProgressive Enhancementを軸にまとめたので、具体的なイメージはそちらを併照してください)
- Progressive enhancement(Wikipedia)
- Inclusive Web Design for the Future with Steven Champeon and Nick Finck
- Understanding Progressive Enhancement(A List Apart)
なぜ今、Progressive Enhancementなのか?
- 背景1: RIAの隆盛とマルチデバイス時代
ところが、メモリが少ない、画面サイズが小さい、入力装置の体系が異なるなど、小型携帯端末では、デスクトップPCに比べて様々な制約があります。またアップルのiPhoneがFlashをサポートしていないなど、ソフトウェアの面での選択肢が狭められることもしばしばです。
WDEでEric Meyer氏が、特別なプラグインを導入することなく、ブラウザネイティブなJavaScriptエンジンで、RIAを提供できるようになるのは素晴らしいことだと述べていましたが、これもProgressive Enhancementと関連する話といえるでしょう。JavaScriptでProgressive Enhancementを実現する具体的な方法については、Jeremy Keith氏のセッションで紹介がありましたが、その極意は「基本操作はすべてのブラウザから実行可能にすべし」という点につきるでしょう。
- 背景2: 緩慢な標準化プロセス
1. Working Draft(WD, 草案)
2. Last Call Working Draft(LC, 最終草案)
3. Candidate Recommendation(CR, 勧告候補)
4. Proposed Recommendation(PR, 勧告案)
5. Recommendation(REC, 勧告)
この標準化プロセスが緩慢なのは、勧告候補から勧告案に進む段階で、各機能に対して仕様要件を満たした実装が最低2つずつあることが求められることに大きな原因があります。しかし、標準化の重要な意義である相互運用性を確保するために、この有効な実装2つという要件はやはり重要です。
このボトルネックに対して、プロセスを短縮化するには、XHTMLやCSS3が行っているようなモジュール化によって、個々の仕様のサイズを小さくすることが有効な手段とされます。それでもテストスィートの準備やブラウザへの実装が進み、そこからさらに問題点がフィードバックされてこないと、いつまで経っても相互運用性は担保されず、勧告まで何年も要してしまうことになります。(※ちなみに、HTML 5は当初、その仕様としてのサイズの大きさを批判されてきましたが、ここに来てにわかに仕様の一部分離の動きも出てきたようです)
そこで、実装が進み仕様も安定段階に入っているCSS 2.1やCSS 3の一部については、すでに利用可能であることの周知がはかられています。またHTML 5にいたっては、仕様の開発と実装が同時並行で進められ、実装も進んでいる機能(Canvasなど)については、その周知と利用促進までもが並行して進められているようです。
今後要注目なのは、新標準との向きあい方
実装機能に違いのある多様なブラウザ、さまざまなインターフェイスやハードウェア仕様を持ったデバイスに対して、基本コンテンツと基本操作へのアクセシビリティを保ちつつ、一方でより優れた環境に対しては意欲的により良い体験を提供していこうというProgressive Enhancement。
今回参加したWDE 2008を通して、その方向性への意欲を肌で感じることができたのは大きな収穫でした。新標準との向きあい方という意味でも、色々と考えさせられる機会だったと思います。しかし、その一方で、HTML 5のような新標準の個々の機能が安定段階に入ったと知る手段や、付加価値部分のさじ加減の指標など、まだまだ自分でも分からないところだらけだということも浮き彫りにされました。
考察の材料は尽きませんが、そのあたりは今後の課題として、ひとまず今は海外でProgressive Enhancementの機運が高まっていることへの実感を書き留めておこうと思います。
関連リンク
一歩先のWeb標準 バックナンバー
Web Directions East 2008 カンファレンスレポート(前編)
"Proressive Enhancement"(Wikipedia)
Inclusive Web Design For The Future
Understanding Progressive Enhancement(A List Apart)
Bulletproof Ajax (Voices That Matter)
Progressive enhancement with Ajax(Adactio)
HTML 5
W3C勧告プロセスの概要(The Web Kanzaki)
CSS 2.1の勧告はいつ?(Web標準Blog)
「おまけつき」からはじめる新しいWeb標準
(HTML 5)Implementations in Web browsers(WHATWG Wiki)
Comparison of layout engines (HTML 5)(Wikipedia)
CSS Working Group 2008 Charter Table of Specifications(CSS Working Group Wiki)
ゆうさんプロフィール
ブロガー(我的春秋)。リアルな世界では研究職(知識ベース分野)、PM やフロントエンドエンジニアリング、講師(大学)、テクニカルライティングなどを転々とつまみ喰い。
http://my-chunqiu.cocolog-nifty.com/
このエントリーをブックマークする
このエントリーにトラックバックする
このエントリーのトラックバックURL
http://withd.jp/mt/mt-tb.cgi/3078
WEBの新着記事
2009.06.29
行動につながる情報を見つけ出す
2009.06.25
人柄のデザイン
2009.06.25
Web標準と接する際の3つの留意点
2009.06.18
3年間ありがとうございました、のブックマーク放出
2009.06.11








