久しぶりに更新するのに、こんな重苦しい話題で恐縮ですが。先に言っておくと、これはつまらない主張であるかもしれないし、おそらく長い。コンピュータとか仕事に興味がない人は読まない方がいいと思う。


仕事柄、最近はIT業界の動向についての話題を目にすることが多くなった。その中で際立っているテーマが「クラウドコンピューティング」である。昨年アメリカを発端とする世界的な景気の後退が起こり、今後しばらくはその状態が続くと見込まれている。そんな中で、クラウドコンピューティングが非常に注目を集めている。

クラウドコンピューティングが何かということは、ちょっと検索するだけで様々な情報が出てくるので言及することはしないが、話の見通しを良くするために簡潔に説明しておこう。多少誤っているかもしれないが簡単にいうと、クラウドコンピューティングとは、ITをネットワークを通じて利用する形態のことである。平たくいうと、インターネット上で提供されているサービスとしてのソフトウェア(SaaS)や開発環境(PaaS)をひっくるめた名称である。考え方としては以前からも存在していたが、2006年(だったと思う)に、GoogleのCEOが「クラウド」というキーワードを発したことで再度注目されるようになった。

もう少し技術的にいえば、WWWブラウザだけでデータ管理やシステム開発などを行うことができるようなサービスをイメージすればよいだろう。つまり、今まではPCにソフトウェアをインストールして使っていたものが、事業者と契約するだけでインターネットを介して使えるようになる、とも言える。

さて、俺が考えたいのは、「クラウドコンピューティングは視覚障害者のコンピュータ利用をどう変えていくのか」ということだ。

クラウドコンピューティングは、上述したように不況の今、企業にとっては注目度の高いITの形態である。というのも、書記費用を抑えられたり、運用コストを削減できたりといったメリットがあるからである(ただし、一概にそうは言えない)。すなわち、今後企業でクラウドコンピューティングを導入する傾向が高まっていくことを示唆している。

ネットワーク上をデータが飛び交うため、クラウドコンピューティングはセキュリティ面での課題をかかえているが、それを考慮しても、一般的にはすばらしい概念と考えてよい。ところが、あくまでこれは一般的にということであって、視覚障害者に的をしぼってみると、逆にセキュリティ以前の問題を考えなければならないという問題に変わってしまう。それはクラウドコンピューティングを支える技術に起因するものである。

普通、クラウドで提供されるサービスというのは、ブラウザ上でOSにインストールされたアプリケーションと同様の操作性を実現している。その根底にある技術は、Ajax、Adobe社のフラッシュ、そして、フラッシュと対抗する位置にあるマイクロソフト社のシルバーライトなどである。一般の人は、よくできたサービスであれば、(技術的に長けた人を除いて)そう差異を気にせずにこれらの技術を利用できる。しかし、スクリーンリーダーを用いているユーザーにとってはそうもいかない。端的に言えば、アクセシビリティの問題が非常にやっかいなのである。

ここで、まずは現在広く利用されているWindows上で動くアプリケーションについて考えてみたい。スクリーンリーダーのメーカーは、普及したWindowsで利用できるスクリーンリーダーを努力して開発してきた。その結果、今ではずいぶんとWindowsをスクリーンリーダーで利用しやすくなった。この状況は、Windows標準のAPIを利用して作られたアプリケーションについては、そのAPIをうまく読み上げることのできるフレームワークがあればスクリーンリーダーで読み上げ可能である、ということが要因となっているはずである。Windows標準でないアプリケーションに対しても、昨今の状況を加味して、スクリーンリーダーメーカーと、標準的でないAPIを使ったアプリケーションを製作しているベンダーが協力して、徐々にスクリーンリーダーで使えるアプリケーションを増やしてきたという歴史もある。だが、突き詰めて考えれば、これはあくまでWindowsという限定的なプラットホームで動くスクリーンリーダーを作ってきたということに他ならない。

ところが、クラウドコンピューティングの根底技術にある技術(あるいは、Web2.0の潮流の中現れたリッチクライアントやRIAとも言える)は、必ずしも1つのプラットホームというわけではない。前述のようにAjax、フラッシュ、シルバーライトなど、動的なウェブページを生成できる技術が、それぞれのベンダーの思惑の上で市場シェア競争を展開しているのである。

当然、現在の風潮として、アクセシビリティを確保するためのインターフェースはこれらの技術にも存在している。が、それぞれの技術でカバーできるアクセシビリティも違えば、実装の面でも異なるものだ。MSAAのように、Windowsという1つのプラットホーム上で提供される支援技術とは少し事情が違う。

そして、一番の問題なのは、開発者が、それらアクセシビリティ機能を意図して作らなければ、スクリーンリーダーにとってアクセシブルなコンテンツを作ることが難しい、という点である。ただし、これはWindowsに限っても当てはまることではあるが。

ただ、スクリーンリーダー側からの支店でみると、Windowsの場合、Windowsの標準APIに対応すれば、それに準拠したアプリケーションには基本的に対応できた。しかしながら、Web上で使われているフラッシュやシルバーライトなどについては、それぞれの技術ごとに各API(というよりは技術標準のコントロールといった方が適切かもしれない)に対応する必要がある。つまり、フラッシュに対応したからといって、シルバーライトやAjaxも使えるようになる、ということではないのだ。

結局、存在する技術の間で標準化されたインターフェースがない限り、スクリーンリーダーとしては各技術に対応するしかない。それはWindowsの標準インターフェースに対応することより労力を必要とするであろう。これが、クラウドコンピューティング時代に視覚障害者、とりわけスクリーンリーダーのユーざーが直面する問題の根本的な原因であると、俺は考えている。くどくなってしまうが、見た目には同じようなツリービューだったりダイアログであっても、使われている技術体系が異なる以上、スクリーンリーダーは個々の技術に対応しなければならないのである。それは、各技術がそれぞれにアクセシビリティ機能を持っていたとしてもである。それらのインターフェースが統一されていなければ、結局個々のアクセシビリティ機能にスクリーンリーダーが対応していなければならない。

最も、基本的な部分ではそれが達成されている。Web標準、つまりW3Cのガイドラインに沿った形で情報を提供すれば、たいていのものはスクリーンリーダーでも読み上げることは可能だろう。

そして、上記のような問題を解決するために、最近勧告になった、W3CのWCAG2.0、加えて(まだドラフトだが)WAI-ARIAといったガイドラインに沿って、各技術がアクセシビリティのためのインターフェースを実装してくれれば、表面上の問題は解決すると期待できる(WAI-ARIAについてはスクリーンリーダー側の対応が必須である)。

一通り技術的なことに言及したところで、利用者としての立場を述べたいと思う。正直なところ、技術にそれほど精通していない人にとって、上記の議論はどうでもいいことである。いや、個人的にはそういうことに積極的に関わって欲しいと思うが、スクリーンリーダーのユーざーには決してそんな人は多くないというのが実情だろう。そこで問題となるのが、今のWindowsアプリケーションと同様のレベルで、クラウド上のシステムを利用できる程度に技術水準が向上するまで、テクノロジーに詳しくない人はどうしたらよいのだろうか、ということなのである。

2014年にはクラウドコンピューティングの市場は1,400億円になるとの予測がある。その中で、企業で働くスクリーンリーダーユーざー(ほぼ全盲であろう)がこの問題に直面することは避けられないであろう。だいたい、マイクロソフトのオフィス製品を使うのにも一苦労なスクリーンリーダーユーざーが、果たしてもっと悪い状況のクラウド環境でやっていけるのだろうか。

これは自分の身を考えても不安なことであるが、逆にそれを克服できるソリューションがあれば、(市場はきわめて小さいが)ビジネスとして切り開くことができるということではないか。技術的課題はとっても多いが・・・。

と、取りとめもなくいろいろ書いたが、結局俺は何をいいたかったのだろう。だいぶ酒が回ってきて、だんだん意味が分からなくなってきた。が、要するに俺はそういう分野に関わりたいのである。受託開発を主にやってる会社に入社したものの、ぜんぜん仕事がなくて、最近気分が落ち込み気味で、そういう中でいろいろ考えて出た結論が「やっぱり全全盲は全盲のためにできることを模索することがいいんじゃないのか。逆にそういうフィールドであれば多少は活躍できるんじゃないか。」ということだった、なんていうことが、こう、いろいろ俺に書かせてしまったんだ、きっと。

だからね、俺はいずれそういう路にいくよ。だからもっと勉強します、楽しんで。