アンカテ このページをアンテナに追加 RSSフィード

2014-05-24

世界を変えているのはコンピュータでなくて数学じゃないだろうか?

角と王だけで「成り」が無い将棋を考えてみる。

角一枚で追い回しても王様はつかまらないので、おそらくこれは勝負がつかない。これが必ず引き分けになることをコンピュータで計算できるだろうか?

相手の王が隅にいたら、自分の王で逃げ道を全部塞いでおいて、角の王手で詰める配置はあるので、このゲームでも相手がボンクラだったら詰みはある。だから、どういう配置でも「詰み」から逃れる手順があることをしらみ潰しで計算しなくてはならない。駒が四枚でも配置の方法はいろいろあるので、かなりの計算量になるかもしれない。

しかし、実は、これが勝負がつかないことを証明するもっと簡単な方法がある。

角は(馬に成れないことを前提としたら)、盤面の中で行ける位置と行けない位置がある。チェス盤のように盤面を白と黒で塗り分ければ、それがすぐにわかる。黒の位置にいる角は常に黒しか行けず、白の位置にいる角は白しか行けない。だから、初期配置で相手の角が白にいたら、自分の王様は黒しか行かないと決めればいい。そうすると、角で王が取られることはないので、角は無視できる。この将棋は王様二枚だけのゲームになる。自分の王は黒しか行かないと決めても、相手の王から逃げ回る手は常に存在する。だから、このゲームは決着がつかない。

つまり、盤面を白黒で塗りわけることで、このゲームの計算はずっと単純になる。あるいは、計算しなくても証明できるものになる。実際の将棋はもっとややこしいが、実は、このような計算を単純にする概念が隠れていて、誰かの発見を待っているのかもしれない。

よく、将棋の完全解析には、途方もない計算量が必要で、一秒で一億手を計算しても宇宙の年齢より長い時間が必要だ、とか言われる。100倍とか10000倍くらい計算が速くなったくらいでは、ぜんぜんどうしようもない量の計算が必要なことは確かだ。

しかし、それは、全ての駒の配置を全部違うものと考えて計算することが前提になっている。角一枚の将棋で、盤面を白黒に塗る前の状態だ。盤面を白黒に塗ると、駒の位置を9×9=81通りでなく、白黒二とおりで考えることができる。

おおざっぱに言って、この「白と黒で塗りわける」というような補助線を引いて計算する場合分けを少なくするのが数学の力だ。

9×9=81の場合分けとその関連を正確にコンピュータの中に再現するのがプログラミングの力だ。発注者が81通りと言えば81通り、発注者は白黒と言えばふた通りの場合分けを言われた通りに再現する。

数学でできることとプログラミングでできることを区別することが重要だと思う。同じ81通りでも、プログラミングの仕方によって計算の速度は随分違ってくる。けど、それだけでは確かに将棋の完全解析は宇宙が終わっても終わらない。数学にはもっと根本的に問題を変えてしまう力がある。

しかし、プログラミングはいつその力を発揮するか予想ができる。数学の力によって、誰かが将棋の計算を単純化する方法を思いつくのがいつになるかは予想がつかない。

これから、コンピュータによって世界が変わっていくと予想されているが、正確に言えば、人間がプログラミングの力と数学の力を組み合わせてコンピュータを使って世界を変えていく、のだ。

この流れには、納期は(ある程度)守るけどたいしたことができない奴と、はならか納期なんて概念がなくていつ本気を出すかわからなくて、むしろ「明日から本気出す」と言ってるだけに見えるけどごく稀にどでかいことをしでかす奴がいて、その両方が必要だ。数学が珍しく仕事をすると、プログラマみんなしてそれに飛びつきそれをしゃぶり尽くす。

検索エンジンと将棋ソフトに見る計算馬力とのつきあい方というエントリに書いた例だと、ページランクという数学はしゃぶり尽された所で、ボナンザメソッドはまさに今その最中なのだと思う。

世界をある方法で白黒に塗りわけると、突然計算が簡単になって、宇宙の終わりまで計算できない問題が、たかだか100万台のサーバのクラウドでなんとかなる問題になる。それを誰かが発注してプログラマが納品すると世界が変わって、われわれはその結果を見て驚くのだが、プログラマやその発注者だけが世界を変えたわけではない。気紛れな数学もそこにからんでいる。気紛れではあるけど、私の観測範囲の中にも10年ちょっと二件の顕著な例があるので、これからも世界全体としては、数学が仕事をしていくと思う。

「コンピュータが(ネットが)世界を変える」という言い方には違和感があるのだが、ひとつは主語が機械なのはおかしいということと、数学とプログラミングという、本来正反対なものを一緒にしていることが乱暴すぎる言い方のように感じる。どっちも大事だし乱暴に言っていいなら世界を変えているのは数学で、コンピュータは数学はできない。

「数学」と言うと狭すぎるかもしれないが、とにかく本質的に結果が予想できない所に大事なものがあることに、もっと注目すべきだと思うのです。

一日一チベットリンク弾圧・暴力…「負の連鎖」 ウルムチ爆発事件  :日本経済新聞

2014-05-20

片山被告の独善性の謎

私は、遠隔操作ウイルス事件で起訴されていた片山被告が犯行を認める前の5/17時点で、クラッキングでは敵の力の見極めが重要というエントリを書き、「片山氏は犯人ではない」と主張しました。

その後、本人が弁護士に告白した内容が報道され、片山氏が一連の犯行を認めたことは間違いないようです。そこで、自分がどういうふうに間違えたのかについて書いてみます。

私が、「彼は犯人ではない」と思ったきっかけは、彼が真犯人をよそおって書いたメールを読んだことです。それまでは、「よくわからんけど違うような気がするな」という程度の感覚だったのですが、これを読んで強く違うと感じました。

どこでそう思ったかと言えば、「iesysの正体」の説明です。これが、検察の立証の意図をきちんと理解した上で、判明している事実と整合性のあるストーリーになっていたことです。私は、C#については詳しくないのですが、ブログやtwitterで経験のある人が何人か「なるほど」と言っているのを見ました。技術的にも一応の整合性はあるようです。

それまでは、なんとなく犯人像として独善的で独りよがりな人物を想像していたのですが、この部分には独善性が見られなかったことに強く印象を受けました。

一方的に、自分に都合がいいストーリーを主張するのではなく、検察の立証に対して「あなたはこう言うけど、私はそれについてはこう反論する」という形で答えています。つまり、このメールを書いた人物は、自分と敵対的な立場の人(検察)と、きちんと言葉のキャッチボールができる人であるということです。

この「自他の違いをきちんと意識できる人間」という印象が、それまで漠然と見ていた片山氏の印象(特に彼が以前起こした犯罪の独善性)と正反対なので、「これはやっぱり冤罪なのではないか?」と思いました。

彼は、警察と検察を愚弄した上で保釈されていている身分です。そういう自他の違い、相手の立場や主張を理解できる人間であれば、今の時点で偽装メールを出すという危険は当然認識できるだろうと考えました。

もし、この状況でああいうメールを出すような人間であれば、その内容ももっと独善的で主張の中に技術的、論理的な穴があるはずだと思ったのです。

そこで、2chやtwitterを見てみると、C#のスキルが問題になっていて、それについて0か1かの単純な議論になっているのが目につきました。踏み台プログラムやワームのようなプログラムを書くためには、単純な言語の知識ではなくて、「そのプログラムがどういう状況で動作して、ユーザがそれにどう反応するか」についての想像力が必要です。これも独善的な人物には難しいことです。そこで、そのスキルの相対比較という問題に焦点を合てたエントリを書き、以下のように主張しました。

(彼のプログラマとしての能力が)標準以下で、誇大妄想的な自身過剰であったらやるかもしれないが、それではすぐに尻尾をつかまれるので、ここまで事態を長引かせることはとても不可能だ。

事態が長引いたのは、捜査当局の失態でもありますが、ひとつの要因としては、片山被告には自分と違う立場の人間の考えることを想像しシミュレートする能力があり、それによって技術的な知識をうまく活用していたからではないかと想像します。

もちろん、それが群を抜いて優れたものであるとは思いませんが、犯行そのものや多くの人を騙し続けたことに見られる独善性とのコントラストが不可解です。

一人の人間の中に、このような共感能力と独善性が同居していることがあるというのは、人間とは本当にわからないものだと思います。

2014-05-17

検索エンジンと将棋ソフトに見る計算馬力とのつきあい方

Webの検索エンジンと将棋の思考エンジンは似たような経緯で発展してきている。みんながどうやって場合分けを多くするか考えていた時に、逆の方向、つまり場合分けを少なくする方法で、大きなブレイクスルーが成し遂げられた。

Web上には、ニュース、マニュアル、企業の広告やPR、個人の日記など多種多様な文書があって、それぞれ作られ方も違うし、読む人が重視する特質も違う。だから、分類や検索をするのに、ジャンルごとに違う処理が必要だと思われていた。分野を限定すれば、ある程度機械的な処理が可能かもしれないが、当面それも無理なので、手作業で良質サイトのディレクトリが作られていた。

それに対し、グーグルのページランクは、全てのWeb文書を内容の区別なしにリンクのみで処理することで、機械的検索を実用化した。ここで重要なことは、文書の種類も区別しないし、文書間のリンクも、リンクする意図を一切考慮することなく全部一律に扱ったことだ。

将棋プログラムで、ボナンザが行なったことも、ある意味これと似ている。将棋は、戦形がいろいろあってそれぞれに評価基準が違う。同じ戦形でも、ゲームの進行状況によって同じような手がいい手になったり悪い手になったりする。ボナンザ以前のプログラムは、盤面や手を評価する基準をいかにきめ細かく分類するかの勝負だった。

ボナンザの革新は機会学習という手法を導入したことだと言われているが、学習において、過去の棋譜を細かく分類しないで、一括で大量に処理したことがポイントだと思う。

どちらのケースでも、場合分けを行なうために、人間のエキスパートの知識や判断基準を、どうやってコンピュータのアルゴリズムに移しかえたらいいか、みんなが頭を悩ませていたのだ。

人間は、そういう時、「ああそれは簡単で、こういう時はこうすればいい、ただ、こうこうこういう時だけは例外で」などとスラスラ言う。そういう説明を聞いていると、半分機械的で決まった手続きのように思えるのだが、実際は、人間はそこで、本人が思うよりはるかに複雑なことをやっていて、なかなかプログラムにするのに苦労する。

特に問題なのは「こういう場合はこうする」というルールのうちいくつかが、必ず矛盾していることだ。矛盾したルールがあっても人間は特に困らないでなんとかうまくやってしまうが、プログラムにするには、その「矛盾した複数のルールを処理するルール」がネックになって、なかなかうまく進まない。プログラムを作っても遅くなったりバグが取れなかったり、プログラムの外にある事前のルールの登録が難しすぎたりでなかなか実用化されなかった。

ボナンザの機械学習という方法とページランクは、どちらも、そういう複雑に見えるデータを全部一括のアルゴリズムで処理する。場合分けを少くすれば、コンピュータの処理は速くなるしプログラムの扱いも簡単になるのは誰にでもわかるが、そんな乱暴な方法でうまく行くと思う人はいなくて、一種の盲点になっていた。

ところが、どちらもやってみたらこれが予想以上にうまく行って、いっぺんでスタンダードになった。象徴的なのは、ボナンザ開発者の保木氏はそれまでの開発者と違って、将棋の初心者だったことだ。グーグルのラリー・ページも、Webについてよく知っている人というよりは、数学やプログラミングのエキスパートだ。グーグルは傲慢で無神経な会社と批判されることが多いが、創業者二人が、自分たちのユーザについてよくわかってなかったことが一因だろう。

今後も、いろいろな分野で「場合分けを少なくして処理できるデータ量を増やす方向への進化」が起こるだろう。それは多くの職業に大きな影響を与えると思われるが、これに対して、過小評価も過大評価もしないことが大事だと思う。

おそらく人間の抽象化能力は、ビッグデータよりずっと少ないデータ量に最適化されている。だから、そういうプログラムのうちいくつかは、直感的に予想されるよりはるかに賢く見える。

その賢さを「このプログラムは複雑な場合分けに応じて適切な判断をしている」ととらえると、実際以上に賢いものに見えてしまう。また、処理の中身を見て「実に乱暴に全てのケースを一括処理している」ことに気がつくと、「そんな方法でうまく行くわけがない」と思い、実際以上に馬鹿に見えてしまう。

意識しないと、この二つの極端な評価の間で人間は混乱してしまうのだと思う。

ボナンザとページランクが画期的に実用性を高めたことは間違いないが、場合分けが不要だと決まったわけではない。実際は、どちらものブレークスルーも進化の終わりに到達したわけではなく、逆に進化を加速している。それを出発点として、複雑になる方向にさらなる進化を遂げている。場合分けは計算馬力を使う前ではなく使った後に必要とされていて、そこにおいては、結局、対象領域のエキスパートのノウハウが必要とされているようにも見える。

コンピュータが賢いわけではなく、コンピュータのうまい使い方が発見されただけで、そこではたぶん、数学とプログラミングとdomain knowledgeの3つが対等に必要とされている。この3つの組み合わせの中での自分の立ち位置をずっと考えて続けていれば、仕事が無くなることはないだろう。

一日一チベットリンク「古地図」で習主席に「ギャフン」と言わせたメルケル|Foresight(フォーサイト)|会員制国際情報サイト

クラッキングでは敵の力の見極めが重要

(5/20 追記)

ここに書いた内容は完全に間違いでした。詳しくはこちらのエントリに書きました →

http://d.hatena.ne.jp/essa/20140520/p1

(追記終わり)

PC遠隔操作事件で真犯人を名乗るメールが報道関係者等に送られたそうだが、内容を見ると単なる愉快犯とは思えない。

これを捜査を攪乱する目的で片山被告自身が発信したと見る人がいるようなので、それについてひとこと。

もし、片山氏が超人的なITスキルの持ち主であれば、警察の監視の目をかいくぐってこのメールの作成のために必要な記録をどこかに保存して、密かにそれを参照しながらタイマーで本人が公の場にいる時間に合わせて発信することは可能である。

ただ、見逃されがちなことは、ここで問題になるのは、ITスキルの絶対値ではなく、「敵」との相対的な比較である。「敵」とは第一義的には捜査機関でありこれはこれまでの経験で見極めがつくかもしれないが、それ以上に、野次馬や関係者の中にいる無数のプログラマや専門家である。

自分がいかに優れたハッキングのノウハウを持っていても、「敵」の中にそれを上回る人が一人でもいれば、何らかの証拠をつかまれてしまう。

ここまで警察を挑発すれば、警察も必死になって専門家に頼るだろうし、野次馬的に興味を持つ人もたくさん出てくる。

たとえば、サーバの運用会社の人間が、運用ルールや法規に違反して興味本位で顧客のデータを盗み見ることだってないとは言えない。関連キーワードで検索したり、時間を絞って自社ネットワークへのアクセス記録を調べたりしたらどうだろうか。

「誰がどうやっても見つからないようにできる」なんて思えるのは、素人だけだ。プログラマとして経験をつめばつむほど、この世界の能力の分布は広いことが経験でわかる。上には上がいるし、上の人ほど謙虚である。それは人格の問題ではなく、能力が高い人ほど他人の能力を正確に判定できるということだ。「自分よりさらに上がいる」というのは謙遜ではなく、単純に彼が見た事実なのだ。

それと、クラッキングは総合力の問題で、OSやバイナリの知識から、ネットワークの運用の実態など、多方面の能力が必要とされる。表の世界の話だけではすまなくて裏の世界特有のノウハウもいろいろあるようだ。それら全ての分野でエキスパートになるのは無理だ。

だから、片山氏が標準以上のプログラマであれば、こういう偽装メールを発信することのリスクが分かるので、そんなことはしない。

標準以下で、誇大妄想的な自身過剰であったらやるかもしれないが、それではすぐに尻尾をつかまれるので、ここまで事態を長引かせることはとても不可能だ。

自分が完全にフリーの身であれば、「理論的に見つからない方法」はあるし、そんなに真剣に捜査されない見込みがあれば「相対的に自分のスキルが上だ」という判断が合理的であるケースもあるだろう。

だが、これだけ注目された事件の被告であれば、「スキルの絶対値が高い人は敵との相対比較についてどう考えるだろうか」という考察が必要だと思う。

2014-05-14

「どこが違うのか」について合意する努力によって信頼関係を再構築する

美味しんぼを巡る騒ぎは、日本における、社会と科学者コミュニティの根深い相互不信の関係を示していると思うが、「対立点の合意」という方向でそれを再構築できないだろうか。

ある科学者が「福島は安全だ」と言い、別の科学者が「福島は危険だ」と言っている。科学者が人によって違うことを言うのは異常事態であって、どちらかが嘘をついている。

そういう見方になってしまうのは、「科学とは一意の真理を確定するブラックボックスであって、重要なのは結論である」というような科学観が背景にあって、これが問題なのだと思う。「意見が一致しないのは何かがおかしい」と考えると、陰謀論や極論に走ったり、科学者の意見を全て政治的な発言とみなしたりして、議論が拡散してしまう。

そうではなくて、むしろ意見が一致するのが例外で、科学者同士は意見が合わないのが平常運転であるとみなすべきだと思う。

重要なのは、そこでどういう対話が行なわれているかだ。その対話の内容が科学的であるかそうでないのかは、ほぼ客観的に判断できる。世の中には、放射能に限らず人々の意見が一致しないことはたくさんあって、その時、どう決着をつけるのかの方法論もたくさんある。その中の特に優れた方法論の一つが科学だ。

その「方法論としての科学」の第一の公理は「絶対的で不変の真理は存在しない。しかし、一歩づつ真理に近づく方法はある」ということだ。それが優れているのは、呉越同舟で意見が違う人同士でも相手の研究を参考にして自分の研究を進めることができるからだ。

この「方法論としての科学」に絶対的な信頼を置いていて、これをベースに政策的な決定が行なわれるべきだと考える人は多いと思う。ただ、そういう人の本音といわゆる「原発村」の主張は一致しない所も多々ある。

美味しんぼの人やいわゆる放射脳」の人が暴走しがちなのは、「科学的方法論」に忠実な人と「原発村」のような「(ローカルな)科学者コミュニティ」に忠実な人の区別ができてなくて、その結果、中立的な立場で科学的素養のある人のアドバイスを、全部「御用学者」として排除してしまうからだと思う。だから、両者の違いを見えるようにすることが重要だ。

私は、「”五重の壁”で封じこめるから原発は安全」という表現には、深い意味があったと感じている。つまり、3.11以前には「放射能が飛び出しても大丈夫」という言い方をした人はいなくて「絶対に飛び出さないから大丈夫」と言っていた。「五重の壁」を強調するということは、暗に「もし飛び出しちゃったら大変!」と認めていたと解釈すべきだと思う。

今観測されている放射線量や検査体制から見て、福島は安全だと思うが、それを信頼してもらうには、「たまたま今回の放出量と放出時の風向きの結果として、今回は福島は安全であったが、次もそうなる保証は何もない」と言うべきだ。おそらく、「科学的方法論」に忠実な人は大多数が同じ意見になると思う。

原発村は「福島も安全で(これからの)原発も安全」と言っている。問題は、そういう原発村と「(本物の)科学者コミュニティ」の違いを「放射脳」の人に理解してもらうことだ。

あるいは「福島(のレベルの低線量被曝)が危険」という異論と「(これからの)原発が危険」という異論は、科学的方法論から見て相当受け止められ方が違う、ということ。

もし、科学者コミュニティに対して、白か黒かの最終的な結論を要求すると、どうしても厳密な科学的方法論にはなじまない所があるので、政治的な恣意性が入りこみやすく、どちらも安全という答になってしまう。

だから、「科学者というものは結論は共有しないけど方法論は共有している」つまり「意見が一致しないけど喧嘩のしかたや決着のつけかたはだいたい同じことを考えてる」という前提で、「ここがこういうふうに対立している」という「論点のリスト」を作って、それに全員がサインする、ということを求めたらどうだろうか。

「原発は危険」ということが論点だということに合意する科学者は、「福島が危険」という異論を論点とすることに合意する科学者より、はるかに多いはずだ。

科学者コミュニティが社会に提供すべきものは、一意の結論ではなくて、このような「合意された論点のリスト」とその解説ではないかと思う。

そして、その「合意された対立点」に対して、主観に基づいて意思決定をするのは政治家の仕事で、有権者はその主観を評価する。ただ、政治家と有権者がそれをするには、専門家による客観的で異論のない「論点のリスト」が必要で、それを作る責任は科学者コミュニティにあるし、科学というものはそれを可能にする力があると私は考えている。

科学は、価値判断と事実や法則の認定を切り離すことで客観性を得ている。だから、本来「科学的な政策決定」というのはあり得ない。どんな結論にも不確定性はあるし、価値判断の枠組みがなければ結論は出せない。だから、政治家がその責任を科学者に押しつけることはできないし、科学者は全ての結論が現状の枠組みの中での暫定的な結論であることを意識して発言すべきだ。「こういう枠組みで考えるとこういう結論になる」という断定はできても、「こういう枠組みで考えるべきだ」というのは主観的な判断で、本当はそれは科学的方法論の外側にある。

おそらく、「論点リスト」でも全ての科学者が合意することはないだろう。しかし、少なくとも「結論」で合意できる範囲より、「論点リスト」で合意できる範囲の方が大きいし、全体として有用な情報を提供できることは間違いない。そして、「どこが違うのかについて合意してそれが外部によく理解されるようにお互いが努力すること」というような意識的な呉越同舟の方法論は科学に限らず、あらゆる分野でこれから必要とされていくと思う。


一日一チベットリンク【驚愕】来日中のダライ・ラマ法王をコンビニで発見!!! - NAVER まとめ

2014-03-30

ロードマップ指向とエコシステム指向

IT業界の世代間ギャップを「ロードマップ指向 VS エコシステム指向」という図式でまとめるとうまく整理できるような気がしてきた。

他の業界でも、常に勉強してないと仕事にならない所では、似たような問題があるかもしれない。普通の人は「ロードマップ」の中では真ん中を進むべきで、「エコシステム」の中では真ん中を避けるべきだ、という話。


私は、80年代からずっとプログラマをしていて、今でも現場でコードを書く仕事をしているので、同世代の人から、彼らと現場の若い人との仲裁役というか通訳のようなことを期待されることが多い。

確かにそこには微妙なギャップがあって、自分はどちらの言い分にも共感する所があるので、なんとかそれを言葉にしたいのだが、なかなかうまく言えなかった。

プログラマという仕事は、今も昔も勉強をしてないと普通の仕事も成立しないのだが、その勉強の仕方というか意味づけが、違ってきていると思うのだ。単純に言えば、量の問題である。今は勉強すべきことがずっと多い。

しかし、量の問題としては、何年も前に現場を離れて管理職になっている彼らも認識している。いやむしろ、俯瞰できる立場にいる分だけ、勉強の必要性もその必要量が拡大していることもわかっている。

では何がズレているのかと言うと、それがうまく言えなくてモヤモヤしていたのだが、ここに「ロードマップ指向 VS エコシステム指向」という図式をあてはめればいいのかもと、思ったのだ。

90年代くらいまでは、IT業界には「ロードマップ」という長期計画があった。基本的には、コンピュータメーカが顧客に対して「うちは、今後数年間、こういう技術でこういう問題を解決していきます」という見込みを述べて、セールスのプロモーションに使うものだ。

しかし、これは単なる売り込みの口上ではなくて、技術者サイドに計画的なスキル開発を促すものでもあった。

たとえば、私が仕事を始めた頃は、RDB(リレーショナルデータベース)という技術が導入され始めた時期だった。そうするとロードマップには「次のバージョンからはRDBを標準サポートして、従来はできなかったリアルタイムのレポートを作れるようになります」とか書いてあった。

私の上司は、これを見て、チームの中で誰にこれを勉強させて、どの顧客を実験台にしてRDBを試すのかとか計画する。そして、重要な顧客がRDBに切り替えるタイミングまでに、自分の部下の大半がこれの経験を積んでおけるようするためのストーリーを組み立てる。

つまり、ロードマップは、スキル開発のガイドラインになっていて、これを頼りに、誰が何をいつどれくらい勉強すべきかを考えるのだ。

この時代を経験している人は、今でもこの「ロードマップ」があるかのように、プログラマの勉強について考えているような気がする。つまり、これに従えば確実に見返りがあって、これに遅れると確実に失業するような計画表がどこかにあって、それを読みとることが成功で、それを読みきれないことが失敗であると。

しかし、今の業界は、「エコシステム」の時代だ。熱帯雨林のように、食いあいつつ共生しあうさまざなタイプのプレイヤーが、自分の為だけの個別の意思決定をして、その相互作用で技術が発展していく。

「エコシステム」は矛盾だらけで、ある技術が発展するのと同時に、そのアンチテーゼとなる技術も伸びる。たとえば、今は、RDBが標準化して、その次の NOSQL というタイプのDBが普及しはじめている時期だが、一方でRDBを NOSQL に適した分野で使うための「Web Scale SQL」という技術が開発され ていたりする。

「数年後に、みんなで一緒に RDB から NOSQL に乗り換えましょう」などという、整合性のあるストーリーを考えてくれている人はいない。

「Web Scale SQL」でも「NOSQL」でも仕事はあるだろうけど、あなたにとってどちらがいいかを教えてくれる人はいない。

問われているのは、「Web Scale SQL」と「NOSQL」が熾烈な生存競争を繰り広げる中で、あなたは、どこに自分のポジションを持とうとしているのか?ということだ。プログラマが勉強すべき技術のあらゆる項目に、こういう行方の見えない生存競争がある。

自分が「エコシステム」の中のどういう位置にいて、何と協力して何と戦うのか、そういう自己認識がないと、これから何を勉強したらいいか、何を勉強させたらいいか考えようがない。

「ロードマップ」も「エコシステム」もプログラマにとって適応すべき環境であることは同じだが、その適応のしかたは随分違っている。「ロードマップ」は、相手の意図を読み取ることが重要だが、「エコシステム」には意図がない。意図を持つのは自分の方で、自分の意図が明確にならないと、方針が決められない。

「ロードマップ」には全体像があって、全体像を把握した上で自分に関連する部分の詳細を見ていくことが必要だが、「エコシステム」は人間の理解を超えていて全体像は見えない。むしろ、最初に自分の回りを見て、必要に応じて、視野を少しづつ拡大していく見方の方が有用で現実的だ。

「ロードマップ」が指し示す未来の方向と違う方向に進むことは致命的な間違いだが、「エコシステム」はむしろ中心部がレッドオーシャンで、周辺部に生き残りが容易なブルーオーシャンがある。「エコシステム」の中で王道を進むには、並みはずれた他の者にはない強みを持っている必要がある。

普通の人は「ロードマップ」の中では真ん中を進むべきで、「エコシステム」の中では真ん中を避けるべきだ。

どんな仕事でも「知識」が大事になっていると思うけど、その「知識」の体系が、人が考えたものなのか自然発生したものなのかによって、取り組み方が違ってくる。「知識」のフロンティアにはいつも予測不能のエコシステムがあったとは思うけど、一般の人の普通の仕事にそれが関係するようになったのは最近のことで、これは結構、混乱の種ではないだろうか。

「知識」と言うと、人が体系化したロードマップがあるはずと無意識に想定して、それを読みとろうとする人が多いけど、これは、自分もその一員である「エコシステム」として理解すべきものなんだよ、きっと。


一日一チベットリンク【国際情勢分析 矢板明夫の目】中国人権活動家に批判されるオバマ夫妻+(1/3ページ) - MSN産経ニュース