天才の思考法
登大遊さん@ソフトイーサの日記が、話題になっています。自分自身の経験や考え方をもとに、誰もが高い能力や作業効率を得るための、考え方の転換を述べておられます。
リンク先を読んで、考えることは人それぞれだと思いますが、私がざっくりと読んだ感想としては、「あんた、天才」。登さん自身は自慢をしているわけではなく、自らの経験から、「こうしてはどうか?」という提案をしているだけです。しかし、その説明の文章の行間から見えてくるのは、天才肌の人間ならではの思考や行動ではないか、と思うのです。
登さんの提案は、次の3つ。とくに2番目(と3番目)を中心に、説明されています。つまり、感覚的な思考が重要だとおっしゃるわけです。
- 努力しない
- 論理的に考えない
- 頭を使わない
そして、プログラミング作業を例に、その思考法を解説しています。ここが重要。
実際のプログラミング作業を例にして、解説する。
まず、だいたいこういうソフトウェアがあればいいなあとか、このような機能を付ける必要があるなとかいった、とても抽象的なことを思い浮かべる。この際、「絶対に論理的に考えないこと」が必要である。論理的に少しでも考えてしまうと、途中までうまくいっても、それが壊れてしまい、最初からやり直しになるので注意する。感覚的な思考でもってこれを行うのである。
次に、だいたいイメージができたところで、心の中に、ソフトウェアの設計図やデータ構造といったものを思い起こす。ここで注意するのは、「絶対に論理的に考えて設計をしないこと」である。徹底して、感覚的な思考でもって設計する。
ここまではすべて頭の中で処理することができるので、別にコンピュータがなくても良い。電車の中でも授業中でも運転中でも行うことができ、便利である。
2007-03-24 - 登 大遊@筑波大学大学院コンピュータサイエンス専攻の SoftEther VPN 日記
重ねて書きますが、ここが重要。ソフトウェアの内容や機能だけでなく、設計図やデータ構造も思い浮かべる、それも感覚的に。はっきりいって、ここが常人には不可能ではないかなぁと思うのです。そのようなことを感覚的に思い浮かべることができるだけの、基礎的な知識が体系的に頭にないとだめですし、それを可能とする思考法が身についてないと難しいのではないでしょうか。
つまり、その分野(この場合はプログラミング)に関するリテラシ能力がきっちり身についてないと、感覚的に思考し行動するのは、簡単ではないと思うのです。そして、登さん自身が「自動車等の運転などおおよそほとんどの作業で活用することができるのではないか」と書かれているように、自動車の運転のためのリテラシと同様だと私も思うのですが、今回のプログラムに関しては、自動車の運転ほど簡略化もされていないし自由度(納期とか)も高くないと思うのです。
まとめると、登さんの主張は確かにそのとおりなんだけど、それを登さんと同程度の水準の能力で誰もが行うことは、まず無理。そういう主張ができちゃうのが、天才だなぁと思った次第です。