ちょっとひと言

基本法則

David S. Platt

tablets私がプログラムや Web サイトを最低だと思うのは、いつも、その開発者や設計者がユーザーの目的を忘れ、プログラム自体のためにプログラムを飾り立てようとし始めるためです。これは、Platt のソフトウェアの三法則に反します。もしそうなると、熱力学の三法則ように態度を変えて噛み付いてくるでしょう。私が掲げるソフトウェアの三法則は、次のとおりです。

 

  1. ソフトウェア自体には、まったく、何の価値もありません。ソフトウェアが持つ価値、またはソフトウェアによってもたらされる価値はただ 1 つ、ユーザーの幸せをどこまで高められるかにあります。
  2. ソフトウェアがユーザーの幸せを高める方法は、次の 2 つのいずれかです。1 つは、支払いやコラムの執筆など、ユーザーが行いたい仕事の実現に役立つことです。Microsoft Word がこの種のアプリケーションの一例です。もう 1 つは、ユーザーが楽しいと感じられる状態にすることです。私の娘が祖父母にテレビ電話をかけるのに使う Skype やゲームがこのカテゴリに分類されます。
  3. いずれの方法にせよ、ユーザーは、コンピューター プログラムについて考えようとはまったく思いません。たとえば前者であれば、執筆している文書の言い回し、支払いをすべて済ませられるだけのお金があるかどうか、そしてお金を払わなかったら一番やっかいな相手はだれかなど、ユーザーは現在取り組んでいる問題について考えたいと思っています。目標は、日常生活に戻れるように、またはとにかく次の仕事に移るために、今の仕事をすばやく、問題なくこなすことだけです。後者であれば、できるだけ早く楽しい状態に入り、できるだけその状態に長くとどまりたいと思います。楽しみの開始を遅らせるものや、楽しんでいる最中に注意をそらすものは、仕事の妨害よりも嫌われます。私の両親なら、孫を眺めながらたくさんおしゃべりしたいと考えます。いずれにせよ、プログラム自体に注意を向けなければならないことは歓迎されません。

要するに、ユーザーは、今も、そしてこれからもプログラム自体には何の関心もありません。あなたの母親ならば、愛するあなたが作成したプログラムだからという理由で、プログラムそのものにも関心を寄せるかもしれません。いや、やはり無理かもしれませんね。とにかく、それ以外は誰 1 人として関心はありません。ユーザーが関心を持っているのは、自らの生産性を高めることや、自らが楽しむことだけです。

Donald Norman は、彼のすばらしい著作『インビジブル コンピュータ ― PC から情報アプライアンスへ』(新曜社、2009 年) でこの現象について解説しています。ですが、私はもっとわかりやすい例がスポーツの審判の役割にあると考えました。審判は、当事者どうし (2 つのチーム、ユーザーとビジネス問題) のやり取りに、コンテキスト (試合のルール、プログラムの操作) を設定し、施行します。しかし、審判自身は観客の目に入らないのが理想的です。引退した NFL の審判、Jerry Markbreit は、次のように語った初期の指導者についてつづっています (引用符は私が追加しました)。「いいか、これは 1 年で最も大きな試合だ。いや、もしかすると 100 年のうちで最も大きな試合かもしれない。今日、私たちはは飛び抜けてすばらしい仕事をしなければならない。なぜなら、"だれにも、私たちのことを覚えておいてほしくないから" だ。この試合でうまく仕事ができれば、のちのち "まるで私たちはそこにいなかったと思われる" はずだ」。私たちが作成するプログラムの目標もかくあるべきです。

この目標に業界を導くため、私は、Platt のソフトウェア三法則を最もうまく実装し、それ自体への注意をできるだけそらしながらもユーザーを幸せにしたプログラムや Web サイトに、年に一度の第 1 回 Plattski 賞を贈ります。たとえば、先月のコラムで触れた、自動バックアップ プログラムの Carbonite がその一例です。ですが、私は Carbonite の競合ソフト、Mozy に軍配を上げます。Carbonite はユーザーの考える余地や構成をもう少し減らす必要があるからです。

この目標実現に最も見事に成功している、または最も壮大に失敗しているアプリケーションや Web サイトについて、Rollthunder.com (英語) までお知らせください。私の独断と偏見で選ばせていただき、最も優れたものには金 (色の) メダルと銀 (色の) メダルを、そして一番できの悪いものにはブリキのメダルを差し上げます。すべてのテストは、公にダウンロードできるバージョンで行うので、製品を送らないでください。締め切りは、このコラムが発行されてから 3 か月後です。どんなものが送られてくるか楽しみにしています。

David S. Platt は、ハーバード大学の公開講座や世界中の会社で .NET のプログラミングの講師をしています。『Why Software Sucks...and What You Can Do About It』(Addison-Wesley Professional、2006 年) や『Microsoft .NET テクノロジ ガイド』(日経BPソフトプレス、2001 年) などの、11 冊のプログラミング関連の書籍の著者でもあります。2002 年には、マイクロソフトから Software Legend に指名されました。David は、8 進法で数える方法を学べるように、娘の 2 本の指をテープで留めるかどうか悩んでいるところです。連絡先は rollthunder.com (英語) です。