現状のウェブブラウザはウェブアプリケーションを操作するためのインタフェースとして不適切だ。代替となるものが存在しないから仕方なしにウェブブラウザを使っているに過ぎない。それ故にAdobeがウェブアプリケーション向けのプラットフォームApolloを作ろうとしているのは実に自然なことなのだと思う。ウェブアプリケーション向けプラットフォームが多くのOSというかハードウェアで動くようになれば、ウェブアプリケーションのユーザビリティはより高くなるだろう。
そもそもウェブブラウザはURLベースだが、ウェブアプリケーションにそれはそぐわない。たとえば戻るを押した時、前に見ていたURLへ戻るのではなく作業を元に戻してほしい、とか。他にも挙げればきりがない。そもそも文書を読むために設計されているインタフェースなのだから、アプリケーションを動かすには無理がある。
無理をした結果問題も生じている。
最大の問題はインタフェースが統一されないことだ。従来からの一般的なアプリケーションにはOSという共通の規則が用意されており、それに従うこと(あるいは従わざるを得ないこと)で、ある程度の統一性を保つことができている。しかしウェブアプリケーションにはそれがない。ライブラリを皆で利用することによって似通ったインタフェースになることはあるが、基本的にはそれぞれが考え、実装したものだ。真似ているに過ぎず、指針となるものは存在しない。
ウェブアプリケーションのインタフェースは、少々悪い言い方をするならば、無法地帯だ。
その最たる例がショートカットキーだ。アプリケーションを効率的に使う上で必ずや欲することとなる機能がキーボードショートカットであり、それはウェブアプリケーションに対しても求められている。が、1つサービスのためにショートカットキーをすべて覚え直さねばならないという実に困った事態が引き起こされているのだ。これではショートカットの利便性は半減してしまう。
さらに言えば、ウェブアプリケーションのショートカットキーが本来ウェブブラウザの持っていたショートカットを上書きしてしまう例もある。特にその影響を大きく受けているのが初期状態で多数の1キーショートカットが定義されている、たとえばOperaなどといったブラウザだ。ショートカットキーは動作が予測できなくなった時点でその意味を失う。
最近ではウェブアプリケーションを模した1キーショートカットを提供するウェブページも登場しつつある。そう遠くない未来、迂闊にキーボードに触れることができなくなってしまう時代が来るのかもしれない。
たとえばはてブではxにピンをたてる機能が割り当てられているが、Operaユーザにとってxは進むためのキーだ。Operaユーザははてブで予期せぬ動作に惑う可能性があると言えよう。少数派故の悲しい現実だ。今現在、accesskey
以外のショートカットキーを設定することは、利便性の提供と同時に混乱を引き起こしてしまう可能性を秘めているのだ。
少々話はそれるが、ショートカットキーを定義する価値があるのはウェブアプリケーションのみだと私は思っている。強いてそれに付け加えるならば操作性の低い携帯端末向けのウェブページくらいだ。他の大多数を占めるウェブページにショートカットキーは必要ない。サイト管理者が勝手につけたショートカットキーなどユーザである私は知らないし、いちいち覚えようともしない。accesskey
属性なんて要らない。必要なのは次の2つだ。
rel
属性を記述するrel
属性に対してUAがショートカットキーでアクセス可能にするたとえばCtrl+Alt+hを押すとhelp
で示された先が開く、などという実装があれば、とりあえずヘルプへ行きたくなったときCtrl+Alt+hを押すだろう。文字列をコピーするときにCtrl+Cを押すのと同じ感覚で、至って自然に。
ちなみにOperaではちょっと自分で手を加えるだけでそれが可能になったりする。上の例であればh ctrl alt = Go to link element, "help"
とでも書いてやればよい。rel
属性値が複数想定される場合は|
で区切ってやればよい。案外重宝するのは前を参照するためのアクション、Go to link element, "previous" | Go to link element, "prev"
だ。Firefoxでも拡張機能によってこのようなキーショートカットを(おそらくOperaよりリッチに)実現できるだろう。
ウェブでできることは急激に広がってしまった。それを使いこなすためのツールとして現状のウェブブラウザは適当でなくなりつつある。今求められているもの。それは文書を読むためのウェブアプリケーションの1つとしてのウェブブラウザなのかもしれない。
最後に先ほどのショートカットキーの例を取り上げておこう。大量に存在する文書を閲覧するためのショートカットキーと、アプリケーションを使いやすくする為のショートカットキーは本当に両立しうるのだろうか。僕はそうは思わない。どちらでもより使いやすいショートカットキーを使いたい。
ウェブアプリケーションの為のプラットフォームはこういった悩みをすべて過去のものにしてくれるのではないか、と淡い期待を抱いている。