「インタラクションデザイン」という言葉は初めて聞いた。インタラクションデザインは、ユーザインターフェイスよりも広い範囲を扱い、動的なユーザと機械との間との相互作用を含む言葉なのだそうだ。500ページ以上に及ぶ本書の内容は、前半が理論的な解説、そして後半は実践的な設計の解説で構成されている。このため前半部は、概念的な話が多くて退屈な面もある。要所に突然、具体的な例が挿入されていたりするのは、読者をあきさせないためなのかもしれない。
多くのGUIソフトウェアではドキュメントを保存しない状態で、プログラムを終了しようとすると、「保存しますか?」と聞いてくる。本書では、これほど無駄なダイアログは無いと切り捨てる。そんなの保存するに決まっているからだ。ドキュメントは自動保存すれば良いのだ。
とは言え、上級者は、この挙動を逆手にとり、最後に保存しないことを前提として内容に実験的な変更を加えたりする。こういう使い方ができなくなるのは良いのか? 良いのだ。デザインというは大多数のユーザにとって使い良いように成されなければならない。だから一部の上級者よりも、まず初心者、中級者にとって使い易いことを、優先すべきだ。上級者なら、コピーを作ってから実験するなり、いくらでも他に方法を考えつく。でも閲覧するだけのために、あるいは印刷するだけのために開いて、操作ミスで変更してしまったら? そこで自動保存されてしまったら困るのでは。某ソフトは、印刷するだけで、ドキュメントに変更がされたと認識されるという、オマケつきだ。それにはUndoできる仕組みがあれば、解決できる。
今の多くのプログラムは、なぜかアプリケーションを再起動するとUndoバッファが消えてしまう。これだけディスクが大容量化した現在、そのようにする必要性など存在しない。単に昔の習慣を引きずっているだけに過ぎない。まぁ上級者の場合、自分でSCMなどバージョン管理ツールを使って、独自に管理しているのだけど、そんなことはアプリケーションに任せたい。いつでもドキュメント作成時点までの任意の過去の段階にさかのぼれるようになっていれば、自動保存で良いわけだし、ファイルの内容をメモリに読み込むとか、ファイルに保存するとか、そういう実装詳細を意識する必要が無くなる。バージョン管理システムは、共通APIとして、そろそろOSに組み込まれても良い頃なのかもしれない。
ユーザにファイルという実装詳細を提示することが、そもそも間違いだと、本書では述べられている。そしてファイルメニュー(ファイル(F)の中身)を再設計することに取り組んでいる。これは、なかなか興味深い。
と、ここまで書くと、なるほど「インタラクションデザイン」というのは、従来のユーザインターフェースよりも、ずっと広い範囲の概念を扱っていることが分かる。
読み疲れたら、パラパラとめくって、図が載っているところだけを読んでみても面白いかもしれない。伝統的なガスレンジは、ノブが前面に付いている。だから各バーナとの位置関係が明確でない。確かにその通りだと思う。本書での解決策は、ノブを上面に配置することだそうだ。いやぁ、そりゃ使いにくよなぁ。大きなナベを置いたらヤケドしそうだし、熱がノブに回って溶けそうだし、そもそも日本のレンジには、上面にノブを置くスペースとか無いし。
ディスプレイがコンピュータ本体だと思っている人の例が取り挙げられている。実際の本体は、ディスプレイの横の小さな筐体だと言っても信用しない。そう言えば、うちの父も筐体を指してハードディスクと呼ぶ。意外と本体の筐体はデータを入れておく箱で、ディスプレイが、コンピュータ本体なのだと思っているのかもしれないなぁ。確かに画面にこそ仮想的な仕事場が展開されているのだから、そう考えるのが自然なのかもしれない。そんなことを考えながら読むのも、また楽しい。









