Ajax(Asynchronous JavaScript and XML)を利用することによって,これまで実現できなかったような対話的なWebサイトを作成できるようになった。米Microsoftの「Atlasフレームワーク」などの各種Ajaxフレームワークを使えば,Ajaxのプログラミングはより容易になり,開発者はブラウザの微妙な差異から解放されるだろう。ところで,Ajaxの提供する代表的な機能が,オート・コンプリート機能付きの入力ボックスや,ダイアログ・ボックスであるという。ふうむ。Webサイトで,ダイアログ・ボックスが復活するのだろうか?

 Webブラウザ「Firefox」が初期にユーザーの支持を集めた要因の1つは,ポップアップのブロックだった。今日では,「Googleツールバー」や「MSN Searchツールバー」なども,ポップアップ・ブロッカーを搭載するようになっており,ユーザーはこれらのツールバーに「ポップアップのリスクを理解している」ということを説明しなければ,ポップアップを表示できなくなった。ポップアップ・ブロッカーがこれほどまでにユーザーに支持されたのは,様々なWebサイトを訪れる度に,うっとうしいダイアログ・ボックスが表示されていたからだった。

 Firefoxや各種ツールバーは,確かにポップアップからはユーザーを保護してくれる。しかしAjaxやフローティング・パネルには興味がないようだ。残念ながら,Ajaxはポップアップ技術を蘇らせることが可能な技術である。既に多くのユーザーが,ポップアップ並に不快なAjaxサイトを目にしていることだろう。

 Ajaxのもう1つの「素晴らしい」用途は,Webサイトに関する統計情報の取得である。アクセス数を知るだけではなく,各種の情報,つまりユーザーがページを開いていた時間情報や,ユーザーがページをどの程度スクロールしたかという情報,マウス・ポインタが置かれたコンテンツのリスト情報などをサーバーに提供するスクリプトをページに設置するのは非常に容易だ。つまりAjaxを使用することによって,各ページに統計調査用カメラを設置できるのだ。

「人手」を募るWebサービスがSPAM送信者に使われる日

 新しい技術の登場によって,ポップアップ・ブロッカーの意義が形骸化しようとしている。もう1つ形骸化しつつある技術を挙げるとすれば「CAPTCHA」があるだろう。あなたが,Webサイトで何か情報を入力しようとして,意味不明の文字列の解読を要求されたことがあるなら,きっとCAPTCHAに遭遇しているはずだ。CAPTCHAは,「Completely Automated Public Turing test to tell Computers and Humans Apart(コンピュータと人間を区別する完全に自動化された公開チューリング・テスト)」の略である。

 CAPTCHAの目的は,WebフォーラムやWiki,ブログのコメントといった任意の投稿機能に対するSPAMアタックの防止である。コンピュータと人間を区別するため,CAPTCHAプログラムは投稿者に対して問題を解くことを要求する。ただし,コンピュータと人間を区別することによって,この仕組みの弱点を公開してしまう可能性がある。

 例えば,米Amazonの「Mechanical Turk」と呼ばれるサービスがある。Mechanical Turkは,人間がやった方が効率的な作業をやってくれるユーザーをWebで募集して,仕事をしてくれたユーザーに少額の謝礼を支払うWebサービスだという。Mechanical Turkはコンピュータと人間の役割を事実上逆転させる。一般的には,人間が仕事を完了させるためにコンピュータを使うが,Mechanical Turkはコンピュータに人を使わせる。つまり人をファンクション・コールにしてしまうようなものである。

 このようなテクノロジは,CAPTCHAを大々的にクラックしようとするSPAM発信者には理想的なツールであるように思える。ただし,SPAMが有効なのは,その送信に関連するコストが事実上ゼロであるためである。たとえ少額でもSPAM送信のコストがかさむと,このビジネスモデルは崩壊する。ただし,「World of Warcraft Gold Farming」のようなネットゲームのアイテムを売買する事業が成り立っているのがネット界である。もしかしたら,CAPTCHAを人手でクラックするビジネスも,上手く行くかもしれない。