未知への対応
■次元という差
極端に実力の離れている人を指して、「次元が違う」という表現を使う。ところで次元の違いってなんだろう。一般的かどうかはちょっとわからないが、一次元は線上の世界、二次元は平面の世界、三次元は立体の世界と言われている。
じゃぁ、四次元とはどういう世界か?現代人では認識は出来ない。たとえ認識できたとしても、それを表現する言葉が存在しない。また、四次元の世界がどういうものか認識している人がいたとして、三次元の世界しか認識できない人とは同じ認識で話はできないだろう。
認識と概念の違い。ここに決定的な差がある時に、まさに次元が違うという表現がしっくりくる。
■IT系の人とそうでない人
まず、IT系の人。といっても幅が広いので、例えばプログラミングを生業とする人をあげてみよう。プログラミングをする人は、プログラミングの概念というものを身につけている。簡単なところでいうと、変数や配列。このくらいの概念であれば、普通の人でもちょっと勉強すればすぐに理解できる。ただし、関数やらクラスの話になると、ある程度の訓練をしなければ理解できない。
このような、プログラミングの概念を理解した人とそうでない人とでは、同じソースコードを見ても違う形で見える。普通の人には意味不明なテキストにしか見えないソースコードでも、プログラミングという概念を身につけた人には、ソースコードが仕組みに則って書かれたものと認識できる。
プログラミングという概念があるか無いか。それだけで、ソースコードを見た時に見える世界が違ってくる。この二人が、ソースコードを見て会話した時、同じレベルで話ができるだろうか。外国人と話すくらいに意志の疎通が難しいだろう。そのくらい認識と概念ので生じる差は大きい。
■実力を図る物差し
プログラマの実力を計る時、何を基準に判断するだろうか。経験年数、書ける言語の数、今までの実績等、いろいろな基準があると思う。私がプログラマの実力を計る時には、どういう概念を持っているで判断している。
プログラミングをする時でも、ソースコードの可読性、メンテナンス性等、いろいろな概念がある。例えば、プログラミング歴十年、経験豊富でCだろうとRubyだろうと書けるが、可読性やメンテナンス性という概念の無いプログラマがいたとしよう。作るプログラムはそれなりに動くが、後からメンテナンスする人が誰も触れなくなってしまう。そういうプログラマが優秀と言えるだろうか。
また、潜在能力や発想力を判断する基準としても、どういう概念を持っているかは重要だ。同じ努力をしても、何を思って努力するかで結果は全く違ったものになる。また、失敗を通じてしか理解できない概念もある。
■未知への対応力
現代人は何かと自分の基準で選ぶのが好きだ。選択の自由度が高ければ、自分の持つ物差しの範囲で優れた人を選ぶ事ができる。しかし、物差しを超えた実力を持つ人、物差しで測れない潜在能力を持つ人は見抜けない。
選びすぎるが故に、大きなチャンスを逃しているのではないだろうか。次元が違う人間は、たいてい自分の予想のつかない動きをする。実力を発揮する条件も、自分の意図するものとは全く違うものだったりする。エンジニアも、普通の経営者なんかから見ればそう見えると思う。
次元が違う人の能力を発揮させるためには、未知への対応能力が問われる。ここらへんは外国人や若年者の方が強いように思う。日本の管理職クラスの人は、知らないものへの恐怖感が強い。何でも明確にしてから行動しようとするからだ。これはこれで大事だが、それ故に未知への対応能力が低いように思える。
どんなものでも自分の思うように動いてくれるとも限らない。どんなに頑張っても、せいぜい自分の見える範囲でしかコントロールできない。経営者やエンジニア等、それぞれ考えてる事の次元が違う同士が実力を発揮するカギは、未知への対応力にあるのではないだろうか。