頭のいい人だけに見える“見えないもの”

2012年9月25日

頭のいい人が見ている世界
http://d.hatena.ne.jp/potato_gnocchi/20120922/p1
実例を挙げて「人によって世界の見え方が違う」ということを取り上げた話。これを読んで面白いな、と思った。
この内容を一言でいうと“頭のいい人”と呼ばれる生き物はそれを元に世界を補正しながら見ていて、起きていることの結果を予測できる精度が高いらしいということだ。
以前私は登大遊氏について書いたことがあるんだけど、彼はプログラムについて天才的な頭脳を持っていて、普通の人がプログラムを書くときにああだこうだと考えながら書くところをひょいっと無意識のように書いてしまう。これを私は「自転車に乗るように」と表現した。彼は普通の人が「めんどくさい」「ややこしい」と思っていることを脳内でルーチンワーク化して無意識下でできるようにしている。だから意識しなくても感覚に従うだけで一日何千行ものコードが書けてしまう。この無意識作業は自転車に乗ることに似ていて、どのようにやっているかを意識的に説明することができない。コードを書いた天才に「なぜここのコードはこうなのか」と試しに聞いてみよう。おそらく彼は一瞬言葉に詰まり「なぜって、こうしてこうしようとしたらこうなるだろ。自ずとこうなるんだよ」と抽象的に答える。我々の期待した答えは得られない。なぜならそのコードの多くの部分は無意識下の彼が勝手に書いたものだからだ。
(もしかしたらそういう天才でも、人に一度教えた経験があるなら流暢に答えてくれるかも知れない)
でも世界の見え方が違うというのは別にH橋大学卒とかT京大学卒とか登大遊氏とかに限った話じゃなくて、あらゆる人がレベルに合わせてそういう違いを持っているんだと思う。
ありふれた例を挙げるならさっき言った自転車に乗ることがそうだ。あなたが自転車に乗れるとして(乗れない人はゴメンナサイ)乗れない人から「あなたはなぜ自転車に乗れるのか。仕組みを教えて欲しい」と聞かれたらどう答える? おそらく「何となくだよ」「練習すればできるよ」「左右のバランスをうまく取るんだよ」みたいな抽象的なことしか言えない。それは自転車に乗る一連の動作をあなたが無意識下でやっているからだ。ほかに竹馬に乗ったり、スキーをしたり、キーボードをタッチタイプしたり、速読をしたり、地図を読んだり、写実的な絵を描いたり、踊りを踊ったりするのも同じことだ。もっと簡単なもの、たとえば左右の足で速く走るという単純な行動さえも説明が難しい。これらは論理的に考えてこなせるものではないし、仕組みを理解したからできるわけでもない(まず走るためには左足を蹴って重心を前に倒して、バランスを崩す前に右足を出して…と理解しながら走る子供がいるだろうか?)。こうした技術についてはよく「慣れの問題」という言葉が使われる。
世界の見え方の話に戻る。私の場合、この話のなかに出てくる「駅の混雑で等速直線運動をする前提で考える」というのは無意識でやっている。でも「電車の中ですぐ降りそうな人を見つける」というのはわりと頭で考えないとできない。このように人によってできるできないのレベルがあるし、得意不得意の違いもあるだろう。この話を読んで「有名大卒の人は頭がいいからそういうのが分かるんだ」と理解した人がいたらちょっと話を単純化しすぎで、自転車に乗れたり乗れなかったり、プログラミングができたりできなかったりするのと同じでできる人とできない人がいるというだけの話だ。
では件のエントリで出てきた無意識のテクニックを使っている人々は特殊な例かというと、そんなことはない。たぶん頭がいいと一般にいわれる人は無意識のテクニックを人より多くマスターしている傾向にあるような気がする。それはおそらくたくさんの知識が蓄積されたことで初めて手にできたものだろう。医学知識のある人は重い荷物をもつときにきっといちばん筋力負担の少ないフォームを取ろうとするだろう。流体力学の知識のある人は部屋の掃除をするときに床上に舞い上がるホコリをモデル化しながら掃除するだろう。化学の知識のある人は「混ぜるな危険」と書かれていなくても風呂場洗浄剤を混ぜることに抵抗を感じるだろう。武術の知識がある人は打撃を受けた人が次に取るだろう行動を予想して守りを固めるだろう。それらの知識を持っていない人はそういったことをしないし、知識を断片的にしか持っていない人はあえて意識をしない限りはそういった思考ができないだろう。知識をマスターし、それを使いこなそうと試み続けた人だけが無意識下での思考ができるのだ。
そうした人には世界が異なっているように見えているはずだ。具体的にいうと視界に映るものにはガイドが見え、見えないはずの視界にはモデル化された世界が映っているに違いない。たとえばあなたが難しい漢字を丁寧に書こうとするとき、まっすぐ書き進めるためのガイド線が見えたりすることはないだろうか。書き進める過程で次にペンを紙のどの位置に落とせばよいかの点が見えることはないだろうか。あるいは広い運動場にまっすぐ白線を引こうとするときや、知らない町で地図を片手に歩いているとき、脳内にガイド線や鳥瞰図が浮かんで視界にトレースされることはないだろうか。そろばんができる人は脳内でそろばんを動かしたりしてないだろうか。
上記で挙げたものはありふれた例だが、頭のいい人にも同じようにそういったものが見えているのだろう。等速直線運動をする前提の群衆はモデル化されて何秒後かの位置がこのあたりだと表示される。駅を降りるのが近い乗客はシグナルの強さに応じて確率の色分けがされる。部屋にあるホコリはモデル化された流体によってシミュレーションされながら見える。時刻表を見るだけでダイヤグラムの線図が見える。見るばかりじゃない。合奏曲のフルスコアを見るだけで音楽が聞こえてくる。チューナーを見なくても楽器の音がずれていることがわかる。ドラムの次に刻むべきタイミングがミリ秒単位でわかる。
できる人はこう言う。
「考えるな、感じるんだ」
視界は補正され、座標がガイドされ、モデル化された世界で行動予測をシミュレーションしている彼らはそう言うしかない。だが、それが見えない我々には「あいつ、すごいな!」としか言うことができない。その間には途方もない断絶がある。
それを「別の世界を見ている」と表現するのなら、我々は頭のいい人だろうがそうでない人だろうが関係なく全員別の世界を見ているのだろう。

数学教師が教えてくれた「問題を解く」ということ

2012年9月17日

高校の時の微積分(数学Ⅲ)の教師は、数式とその展開を黒板いっぱいに書いて「さあ、写してください」というものだった。そして全員の作業が終わると次の数式をまた黒板いっぱいに展開していき、最後まで解き終わると「さあ、写してください」。ずっとこれの繰り返しだった。問題によっては簡単な解説が入ったりするが、解説がないこともあった。
おそらくこれを見て「詰め込み教育」と思う人がいるだろう。私もそう思う。だけど私はこの教え方が好きだった。はじめてこの方法を見たとき私は衝撃を受け「そうか、数学は暗記科目なのか」と思った。そして事実そうだった。私は数学を丸暗記することで受験を乗り越えることができた。
これはあくまで高校数学の話で、実際には数学はすべてそのように丸覚えで事足りるものではない。高校数学(あるいは受験数学)では解く時間が限られているから、それをチートするために暗記が威力を発揮するというだけのことだ。大学に進んだ私は同じ手法で暗記を繰り返して失敗し、代数学や微積分学を再々履修するはめになった。そして最終的に、暗号理論や情報理論といった応用例を見た後にようやく基礎を理解した。(初めから応用とからめて教えてくれ!と当時の私は思ったものだ)
さて高校の話に戻る。
その数学教師は見るからにステロタイプな数学教師だった。例えるなら石神井先生(キッチョメン!石神井先生)とか森秋先生(それでも町は廻っている)のようなイメージだ。光るメガネ、冷静な眼差し、白い顔、ぴっちりズボンに入れたシャツ、淡々と区切るようにしゃべる癖、定規で測ったようなおじぎ、正確な時間行動、そして学習に対しての厳しさ。彼によって膨大な赤点答案が生み出され(クラス平均点が赤点以下ということもあった)、何度もの追試が行われ、その学校の数学力は守られていた。
「式を展開していけば必ず解けます」
あるとき、長い式展開を終えた後に先生は言った。
一見難しい数式も形を変えていけば辿り着く場所があると解説をした。そして続けた。
「どのような難しい問題も解けるまで諦めなければ、それは解けます」
それは数学について言ったのではなく、世の中全般について言ったのだと思う。
やがて大人になった私は様々な問題の解き方を知った。
実際には解けない問題や、解かない方がいい問題もあるので「問題との向き合い方」といった方がよいかもしれない。

  • 問題を解く
  • 問題を解き、一般化する
  • 問題を解かないですむ方法を見つける
  • 問題は解けないが、別の問題に移し替えて解く
  • 問題は解けないが、条件付きで解く
  • 問題は解けないが、将来解けた先のために別の問題を解いておく
  • 問題は解けないが、その問題を解くことについて価値が低いと評価する
  • 問題を一般化して、将来問題が解けたときの価値を高める
  • 問題が存在しないかのように隠す
  • 問題を無意味にする
  • 問題に関心を持たない

たとえば、山道の真ん中に大きな落石があって通れないとしよう。

  • 人を集めて人力で落石をどかす
    (問題を解く)
  • 重機を用意して落石をどかし、次からも重機が通れるように道を整備する
    (問題を解き、一般化する)
  • その道を通らなくてはいけない用事をキャンセルする
    (問題を解かないですむ方法を見つける)
  • 落石を迂回する山道を作る
    (問題は解けないが、別の問題に移し替えて解く)
  • 落石を半分土砂で埋め、身軽な人だけ乗り越えられるようにする
    (問題は解けないが、条件付きで解く)
  • 新たな落石がないように対策をする
    (問題は解けないが、将来解けた先のために別の問題を解いておく)
  • より安全な山道にするようにロビー活動を始める
    (問題を一般化して、将来問題が解けたときの価値を高める)
  • 山道を閉鎖する
    (問題が存在しないかのように隠す)
  • 落石を気にしなくていいようロープウェイを通す
    (問題を無意味にする)
  • すべてを諦める
    (問題に関心を持たない)

さしずめこのようなアプローチで解決を図ることになるだろう。
問題を解くべきか解かないでいるべきかで言えば、やはり解く方がいい。「分からない」は「分かった」にした方がいい。「できない」は「できる」にした方がいい。そんなことは分かっている。でも時間や予算や労力が限られているから、諦めることを含めた上記のオプションから適切なものを選択して、問題を「解けた」ことにするのだ。
数学教師の言った「解けない問題はない」という言葉はそれを理解するための出発点となった。今になって思えば高校数学の問題の中にはエレガントな解き方もあったし、力づくの解き方もあったし、いろいろなバリエーションがあった。しかしどのような方法であれ最後には答えがあった。暗記でやり過ごした私はもう解き方などすべて忘れてしまったが「方法を尽くせばそこに解がある」という哲学的とも宗教的ともいうべき思考はそこで培われ、私の考え方の基礎となった。
数学教師の話には続きがある。
「どのような難しい問題も解けるまで諦めなければ、それは解けます」
の後に、彼はこう続けた。
「私が今までそれで解けなかったものは、女性だけです」
クラス全員が爆笑した。彼は独身だった。
彼が「今まで解けなかった」といっているのは諦めたということなのか、それともまだ解いている途中のつもりだったのかはよく分からない。

ハリセンキャラクター・マニアクス

2012年9月16日

ハリセン
アニメを見ながらハリセンキャラの魅力について再認識したので、愛すべきハリセンキャラたちを一同に集めてみた。

ハリセン(張り扇)とは

チャンバラトリオの南方英二氏が考案した小道具で、主に漫才で使われる。叩くと大きな音がするがそれほど痛くない。そのため漫画的な大げささが伴ってより笑いを効果的に見せることができる。似た用途に使用されるものとしてピコピコハンマーやスリッパがある。
…しかし現実世界の小道具がアニメ・ゲーム・マンガの世界に輸入された結果、関西出身キャラクターを表現するものとして使われることが多い。おそらく「漫才=お笑い=関西人」という分かりやすいステレオタイプが定着しているためと思われる。

というわけで、数あるハリセンキャラたちを思いつくだけ紹介していこう。
Continue reading ハリセンキャラクター・マニアクス

Windows 8 の画面にストレスを感じる理由

2012年9月14日

Windows 8 の Release Preview版とRTM版を試してみていろいろとストレスを感じたので、その理由が何かについて分析してみた。
結論からいうと

  • UIを一新するならアフォーダンスの考慮が必要だが、それがなされていない
  • UIを一新してユーザの過去の学習資産を切り捨てることに見合う効果がない
  • 新UIは全体的な統一感がないためストレスを感じる

という理由により「クソである」ということが言える。
ちなみに私はWindows 8に対してかなり好意的にとらえている。それはただ2点「重くない」と「ダサいくらいにデザインがシンプル」というところにある。特にデスクトップ環境における、立体感を廃した完全フラットな画面デザインはは私の好みにがっちりフィットし、Windows Phoneとともに近年のOSのなかで一番気に入ったと言っていい。
ただし(日本語で言うところの表面的な)デザインは綺麗でも(英語で言うところの構造的な)デザインは最悪だ。今回私がストレスを大きく感じた部分はUI設計が稚拙すぎるところにある。デザイン用語で言うところのアフォーダンスが足りない。つまり、UIが何もかもを隠しすぎてユーザがどのような操作ができるかのヒントが読み取れなさすぎるのだ。これは初めて触る者にとっては地獄以外の何物でもない。

アフォーダンスに乏しいUIがこれまで文句を言われなかった理由

そもそもの話、Windows 8に限らず一般的に新しいUIというものはユーザに学習を強いるものだ。私たちが普段ふつうに使っている(or使っていた)Windows 7やWindowsXPやMac OSのUIだって、それを初めて見るおじいちゃんおばあちゃんにしてみれば意味不明なUIだ。なのに今までWindowsのUIについて問題が表面化しなかったのは多くの人が学習してきた過去のUIをある程度受け継いできたからだ。スタートメニューでアプリ起動、タスクバーで切り替え、×マークでアプリ終了。歴代OSはそうした基本的な動きを継承しつつ無理のない範囲で変えてきた。
だいたい、Windows 8どころか今までのどのWindowsもUIのアフォーダンスというものはあまり考えられていない。(この点についてはMac OSもGNOMEもUnityもAndroidも同じで、褒められるのはWP7とiOSくらいのものだ)。しかし何とか忍びうる程度の操作性と(教えられれば、ああそういうことねと分かる程度)、過去の学習資産(スタートメニューは形は変わっても役割は変わらなかった)があって多くの人は静かに使うことができていた。
もしMicrosoftがこれを一新する気なら、ユーザがこれまで築き上げてきた過去の学習資産を切り捨てることになるので、そのマイナスに見合う効果と新UIへの馴染みやすさを慎重に検討しなければならなかったはずだ。
しかしMetroを全面に押し出した新UIはその「忍びうる程度の操作性」と「過去の学習資産」を両方とも失ってしまった。「ここはこうするんだよ」と教えられても「ええ?なんでそうなるの?」となる部分が多数あるし、過去から継承してきたスタートメニュー、タスクバー、終了ボタンといった基本的なものが表示されないことで今までの「とりあえず困ったらこれをすればいい」という信頼性が壊れてしまった。この2つの点は慣れていないから損なわれているのではなく、たとえこの先慣れたとしても不可解なUI設計への疑念は晴れることはないし、トラブル時のUI設計の信頼性も回復することはないだろう。

「困った時はとりあえずこの操作」の統一された信頼感

「とりあえず困ったらこれをすればいい」が成り立たない主な理由は「操作の統一感がない」ということだ。これはデスクトップ環境とMetro環境を並立させていることによるものだ。今まではとりあえずどのような状態であってもスタートボタンが表示されていたし、Windowsキーを押してスタートメニューを呼び出すことができた。×ボタンでアプリを終了させることができた。その統一ルールが頭に入っていれば困ったときでもある程度復帰方法を類推することができた。でも今回はルールが混在している。だから条件によっては復帰方法を類推することができない。これは例えるなら建物の部屋によって非常口が様々な方法で隠されているようなもので、もしもの時の逃げ方が分からないのだ。
この並立環境の失敗はデスクトップPC向けとタブレット向けの両方に無理に対応しようとしたからだろう。それは分かる。ならば不要な部分は使わないようにすれば使えるだろうか? デスクトップ用途ではタブレット向けのMetro環境を使わなければ従来通りの使いやすさだろうか? 答えはNOだ。並立環境はそれぞれデスクトップの操作として切り取ってもタブレットの操作として切り取ってもやはり中途半端で、どちらの環境でもキーボード/ジェスチャーどちらかでも操作が完結できない(できたとしても難易度が高い)。そして従来機能がそのままのUIで残っていたり、場所によってはところどころ新しくなっていたりと中途半端なのだ。
なぜここはキーボードショートカットが効かないの?
なぜこの画面ではEscで戻れてこの画面では戻れないの?
なぜこの画面ではWindowsキーで戻れないの?
なぜスタートメニュー1箇所にあった機能がこことこことここに散らばっているの?
なぜこれらの機能の中でこれだけ新UIになっているの?
なぜ似たような機能なのにこっちとこっちで分かれているの?
なぜこのような重要な機能が右クリックしないと出てこないの?
なぜこの画面ではスクロールすると左右に移動するの?
なぜここで出てくるポップアップは永遠にクリックできないの?
一目見てその理由がさっぱり分からない。
「重要な機能はここに配置し、重要でない機能はここに配置しています」
「グローバルなナビゲーションはここに常時表示されます」
「こうすればいつでもアプリケーションを終了して初期状態になります」
「このメニューに配置された機能はこのポリシーで選ばれています」
「このメニューとこのメニューはこうした理由で1箇所に統合できませんでした」
「ユーザがこの考え方を共有すれば戸惑わないので、そのように説明しています」
こうした腑に落ちるような解説がほしいのだが、今のところ出てくる説明には例外事項が多くて理解ができない。
いろいろ盛り込むつもりならLinuxのデスクトップ環境を切り替えるように、はじめから入口を分けて世界観を完結させてほしかった。いったいどのような人がMetro環境とデスクトップ環境との間を行き来しながら使いたいと思うのだろう? いったいどのような人がキーボード単体でもマウス単体でもジェスチャー単体でも操作できないUIを望むのだろう?

Windows 8 は常用できない

蛇足だが、Windows 8を個人的に導入することについて私はこのように考えている。

  • デスクトップで使っているWindows 7をこれで置き換える気はない。常用するつもりもない
  • 常用するのであればタブレット(たとえばSurface)と同時に購入して使うことが前提
  • デスクトップPC上の仮想マシンで実験用に遊ぶには良い

きっとWindows 9が出る頃になればタブレットとデスクトップPCが実際に企業ユースで使われてフィードバックが十分蓄積されそうなので、そのときになればもっとうまいUIの棲み分け方法が見つかるのかも知れない。
とりあえず、Windows 8をWindows 7の置き換えに使うのはナシだ。

Mac導入して5日目の初心者の視点から

2012年9月7日

Macbook AirとVAIO X
最近になって友人から古いMacbook Airをもらいまして、Mac持ちになりました。
そもそもの経緯はiPhone 4Sを使っていて、その後中古で手に入れたiPad(初代)がベッドサイド端末としてわりと快適だったので、じゃあMacもちょこっと使う分には面白いかもと思ったのがきっかけです。いまの私の環境はWindowsとLinuxとiOSとAndroidが混在しているので、これにさらにMac OSが追加される形になります。
現環境
PC:Windows7(メイン)
タブレット:iPad(ベッドサイド用)
スマホ:iPhone 4S、Xperia SX(Android 4.0)
他にもVMでUbuntuとかVPSでDebianとか
今回入手したもの
13インチ Macbook Air(Mid 2011)
キーボードはUS配列、途中でLionからMountain Lionにアップグレード
Macを使ってみての感想ですが「おおむね快適、時々不快」というところです。これまで無縁なユーザなりに、Macの優れたところと足りないところはある程度理解していたつもりなんですが、いざ使ってみると「ほほう、こんな工夫が!」ってところと「チッ、なんでこんな簡単なこともできないのかよ」ってところがあって久しぶりにPC初心者気分を満喫しております。(できないものをできるようにするために、まだいろいろ調べている途中です)
そんな今の時点で、Macbook Airを触っていて気がついた点を以下にまとめました。Mac OSの評価とMacbook Airの評価と昨今のノートPC全般の評価がごっちゃになっていますのでご注意ください。あと、これまで使っていたのがVAIO Xという完全に別カテゴリのノートPCなので、それと無理やり比較してdisってしまう点はご了承ください。
Continue reading Mac導入して5日目の初心者の視点から

電気の恋人 ~ドラえもんの誕生日に寄せて

2012年9月3日

2112年9月3日はドラえもんの誕生日。
今日からちょうど100年後だ。
ドラえもんの居る世界は日常になるか?(はかせとドラえもん)
唐突だが、聴いているうちにどうしても泣いてしまう電波ソングがある。
もしあなたが1980年代~90年代のコンピュータ世界を知っているなら、私と同じように涙ぐんでしまうかもしれない。(あるいは人によっては、電波ソング特有のアニメ声やピコピコ音が耳障りに聞こえるかもしれないけれど)
電気の恋人 I am Programmer’s Song
http://www.sham.jp/studio/sound/denki/index.shtml

(※試聴サイト。1番のみ)
Heartsnative 03 電気の恋人 -I am Programmer’s Song-
https://www.youtube.com/watch?v=6iyAb272cCo

(※初音ミクによるアレンジ版。フル歌詞)

この歌は歌詞が秀逸なのだ。
Continue reading 電気の恋人 ~ドラえもんの誕生日に寄せて