github という公的なインフラを使うために必要なこと

馬しか見たことない人に、これと自動車を両方見せて「どっちが欲しい」と聞いたら、どちらを選ぶだろうか?

理性的な人だったら、自動車が平らな道しか走れないことを一番気にするだろう。

ボストンダイナミクスの四足自走機械は、馬が走れる道ならほとんどそのまま進める。道が舗装されてなかったら、自動車で行ける範囲は本当に限られている。どうみても、四足自走機械の方がずっと実用性が高い。

「道を舗装して、トンネルや橋を作って道を平らにすればいいんですよ」なんて言ったら、「たかが乗り物のためにどうしてそんな手間をかけなきゃいけない?」とあきれてしまうだろう。

私は、今、github を中心に仕事が回る職場で働いている。実際使ってみて、この github というものは非常に便利だと思うのだが、過去の自分にこれを勧めてみたらどういう反応するか想像してみると、これと同じ反応になると思う。

私が働きはじめたのはワープロが普及する前で、最初の5年くらいは、書類を全部手書きしていた。その後の技術変化には全部、それなりに適応してきたけど、最初の刷り込みは大きい。

github は便利だけど、組織の構造というか指揮命令系統を変えないとこれは使えない。過去の自分は「たかがワープロのためにどうしてそんな手間をかける必要がある?」と言うだろう。

ワープロで文書を作成し、そのファイルをメールで送信したりファイルサーバに置くのは、紙でやってたことの延長だ。同じことだけど随分便利になっている。昔の自分は、その方が自然で使いやすいと言うだろう。

四足自走機械が、馬より安くて燃費がよければ、同じように、人は喜んでそれを使っただろう。道を平らにしてまで車輪自走機械に乗り換える必要性なんか感じなかったはずだ。

ワープロやメールなどの初期のITは、全部紙でやってたことのシミュレーションだ。同じことをやってもコンピュータ上のシミュレーションでやるといろいろ便利になる。最初にそれをやるのは正しいし、それは大きな進歩だ。

しかし、技術の自然な利用法という観点で見ると、エンジンやモーターのように動力源が回転するのであれば、タイヤのように回転する部品で推進力にする方が自然だと思う。機構も単純になるし、部品も少なくなる。

コンピュータやネットの自然な利用法は github だ。蟻塚に無数の蟻がたかって蟻塚が成長するように、リポジトリに人が集まって、自然にソフトウエアが成長するイメージ。

工場や物流センターを作るとしたら、自社の敷地内部の設計より立地が大事だと思う。インターからの距離が重要だ。公道である高速道路網とどのようにつながっているかが重要だ。

それと同じように、ある程度の規模のアプリケーションを作るとしたら、内部の設計より、github との距離が重要だ。今、アプリケーションを書くなら、自分で書くよりはるかに多くのオープンソフトウエアを使うことになる。高速道路網に依存した物流センターを作るようなもので、公的なインフラとの連結が重要なのだ。

そして、幹線でなく支線との連結の方がより重要だ。

幹線となるような著名なオープンソフトウエアは、大なり小なり特異な事例であって、普通でないリーダーが率いていたり、特殊な企業が特殊なビジネスモデルのために金を出している。そういうものと普通の会社の業務用アプリケーションとはあまり関係ない。

しかし、多くの幹線ソフトウエアの回りには、プラグインという支線となるソフトウエアがあって、本来は、こういうものに注目すべきだ。大半の支線のソフトウエアは普通のプログラマが数人で開発している。それが何千何万と集って github の中にインフラを形成している。

9割はうまく開発されているが、バグだらけだったり、おかしな方向に進化したり、突然消えるプロジェクトもある。そういうダメなソフトを避けたり、問題を自力でカバーするのが、内製するプログラマの腕の見せ所で、そういうノウハウを得るためには、自分たちが github を日常的に使っていることが非常に有利になる。というか、そういう経験がない人は、何をどう使っていいのかわからないだろう。

四足自走機械と車輪式自走機械を比較検討するとしたら、両者のスペックでなく、道路網の整備状況を見なくてはならない。道路が無い所にトラックだけ入れても何もできない。

それと同じように、github を使うということは、指揮命令系統がない仕事の仕方を導入しないといけない。それをしないと、既に構築されている巨大な公的インフラが見えてこない。

指揮命令系統がない仕事を構成しているのはプルリクエストだが、それを担保しているのは「いつ何どき誰がフォークしてもよい」という暗黙のルールだ。たとえば、Ruby on Railsリポジトリには、今日現在、12953のフォークがある(右上のForkという欄)。この12953人の誰もが「今日から俺のリポジトリRuby On Railsの本家である」と言ってもよいのだ。もし、それに同意する人が本家より多ければ、そのリポジトリが本家になる。

12953人のほとんどは勉強のためにフォークを作成していると思われるが、ごく稀に、自分たちが必要な特別の Ruby On Rails が必要なので、フォークしてそれを維持している人がいる。

もし、本家が迷走して、おかしな方向に行ったら、そのどれかが本家をのっとるだろう。

そういう分裂はほとんど起こらないが、それは、本家がまともな運営を強いられているからだ。幹線が幹線の行くべきでない方向に進むと、そこから別の幹線が生えてきて、最初の幹線をしぼませてしまう仕組みが、 github にはある。この方法は、特定の会社が「我々が責任を持って正しい方向に幹線を進めますので信頼してついてきてください」と言うより、ずっとうまくいくのだ。他の会社が幹線を作れないと、その幹線はたいてい、利益誘導のために、違う所へ行ってしまう。よくても寄り道をする。

誰でも幹線をフォークでできることが幹線を正しい方向に維持して、それがあるので、多くの人が支線をつなげ回りに物流センターがたくさんできる。安心して支線や自社設備を作れるので、スピードが速い。

指揮命令系統がないことが信頼性を担保しているというこの仕組みが、インターネットにとって自然なのだ。エンジンで走るならタイヤで駆動力を得るが自然であるのと同じように自然なのだ。

それが自然であることの証拠をもう一つあげるなら Twitter だ。

Twitterにも、指揮命令系統がないことの強さがある。ただし、その強さは、今の所、破壊力としてあらわれることの方が多い。Brexitをはじめとする、昨今の社会的大事件は、全部、指揮命令系統のない運動が、指揮命令系統のある組織を打ち負かしたことから起きた。そうなるのは当然で、力学に近い絶対的な法則だ。インターネットでは何事もシェアすることが自然なのだ。摩擦が少ないだけ、力が無駄なく伝わる。

ワープロ手書き書類をよくシミュレートしたように、コンピュータは紙をよくシミュレートする。だが、一つだけ重要な機能が抜けている。ネット上の情報は「なかったこと」にはできない。組織というものは全て、いざということに紙を燃やすことで「なかったこと」にすることに依存している。そこだけが抜けているので、本来は、コンピュータで紙をシミュレートするべきではなかったのだと思う。

「なかったことにする」というのは、めったに使われないが、核兵器やフォークと同じように抑止力として社会が回るために重要な機能だったのだ。

ボストンダイナミクスの四足自走機械は、災害現場などのごく特殊な場面のみで使うべきもので、他は全部車輪自走機械を使うほうがいい。

同じように、コンピュータとインターネットは、情報をシェアするために使うべきで、紙のシミュレートをしていいのは、ごくごく特殊な状況のみなのだ。

たとえ、そのために、指揮命令系統という長年人が慣れ親しんだものを捨てなくてはならないとしても。

大量生産の時代には、本来それに向いてない製品を扱う業種も、自動車や家電の会社を真似ることを強いられた。

これからは、本来 github に向いてない製品を扱う業種も、github のやり方を強いられる。Twitter のスピードに勝てるのは github だけだからだ。そして、ソフトウエアでないものをユニットテストしたりプルリクエストするためにAIが使われていくと思う。




当ブログの関連記事


一日一チベットリンクChina Bans Lady Gaga - Stereogum

http://static.stereogum.com/uploads/2016/06/Dalai-Lama-Lady-Gaga-640x468.jpg

「上級国民」の失敗としてのEU離脱

専門知識と利害の反するプレイヤーが無数に絡みあった大きな決断を、たくさんの人を巻き込んで行なうということの、一番の成功がスマフォで、一番の失敗がイギリスのEU離脱だと思う。

「政治とビジネスをこんなふうにごっちゃに論じてはいかん」と言う人もいるだろうが、「EU離脱」は本当に政治的なテーマなのだろうか?特に、経済や治安は「一同でこういうことに決めましたから後はヨロシク」と簡単に言えるもんではなくて、「ヨロシク」と言った後にややこしい話がいっぱいある。少なくとも政治と別の何かがからみあった問題だ。

そして、スマフォをこうするという決断は、ビジネスや技術であると同時に政治でもある。みんなもう忘れかけていることだが、携帯電話は今のような一枚のガラス板ではなかった。ボタンやランプやスイッチでごちゃごちゃしていて、携帯電話のフォルムは千差万別だった。

小型のインターネット端末には、多くの可能性と同時に、さまざまな技術的困難があった。今もある。それを乗り越えるためには、プラットフォームを集約して、各分野での努力がうまく噛み合う場があることがどうしても必要だったと思う。

これをツルツルのガラス板にして、その板全部をストアからダウンロードしたアプリが好きに使う、そしてそのアプリストアは、キャリアではなくキャリア独立のプラットフォーマが管理する。

これは自然にそうなったわけではなくて、ジョブズが明確な意思を持って決断したやり方で、多くの人がこれに賛同の意を表して、Android陣営もこのやり方にほぼ全面的に合意した。

この決断には多くの利害関係者がいた。キャリア、デバイスメーカ、部品メーカ、ソフトハウス、そして音楽レーベル。誰にとってもWin-Winな解はなかった。

たぶん、従来の携帯の延長線上にあったのは、Win*2 + Lose*10 の解で、それを ジョブズが Win*10 * Lose*2 に方向転換したのだ。Win*10 のアイディアを創造するのは技術やビジネスの領域で、アメとムチを使いわけて Lose となるプレイヤーをむりやり巻き込んだのは政治力で、その両者がからんだ複雑な裏付けのある決断を、ジョブズは、大衆にもわかるガラス板の形にして、国民投票にかけたのだ。

私には、キャメロンは、これと構造的にとても似たことをやろうとして失敗したように見える。

本来、イギリスは、こういうことがうまい国だったはずだ。階級分化のはっきりした国だということは、大衆が最後の最後ではエリートを信頼して問題を預ける気分があった国だということだと思う。

キャメロンの失敗は、信任が得られなかったことそのものではなくて、それを予見できなかったことだ。キャメロンだけではなく多くのエリートが、今まで最後の最後で暗黙に得てきた最終的な信頼ということを期待していて、それが見事に裏切られた。

Sushi,Kawaii,Karoshiの次に日本が輸出すべき言葉は、Jokyu ではないだろうか。イギリスにもアメリカにも他の国にも、この「上級国民」という言葉にこめられた呪詛のような気分を理解し同調する人がたくさんいるようだ。

世の中が複雑になって、「上級」の人たちがうまくその複雑性をさばけなくなっている。大衆は、それぞれが独自の「上のやつら」というものを敵視している。私はそれは誤解だと思うのだが、誤解の気分はみんな共通しているのに、誤解の形はみんな違っていて、それぞれが違う「上級国民」に怒っているので、論理的な説得ができないのだ。みんな違う相手に怒っているけど、怒る気分は共通していてシンクロするので、その破壊力が強力なのだ。

「上のやつらはうまくやってやがる」というのは必ずしも的外れではないのだが、それが世の中がうまくいかない根本原因だ、と思うのが誤解で、複雑にからみあったものごとはある限界を越えると、関係者一同最善を尽しても前に進まなくなる。スマフォにもそういう泥沼にはまる可能性は多いにあった。

政治とビジネスは、似たような困難に直面していて、私たちは、一番大きな失敗と一番大きな成功を目撃したのだと思う。これからなるべく多くのジャンルをビジネスにまかせるべきだと思うが、全部はまかせられないわけで、政治の立て直しは急務だ。それにはまず、「上級国民」という言葉に象徴されているものをしっかり受け止めることが必要だと思う。


当ブログの関連記事

一日一チベットリンク殴打に電気ショック、中国はこうして僧侶を拷問した 米国議会の公聴会でチベット僧侶が苛酷な体験を証言 | JBpress(日本ビジネスプレス)

「盗聴」という言葉が死語になる日

あまり話題になっていないが、これはすごく大きなことだと思う。

end-to-end encryption というのは、それほど目新しいことではないし、メッセージングでこれをサポートしたのも、WhatsAppが最初ではない。技術的に見て画期的なこととは言えない。

しかし、facebook傘下で、10億人のアクティブユーザを抱えるベンダーが、原則として全てのユーザに対してデフォルトでこれをサポートすることの意味は大きい。

今までは、暗号化ソフトは沢山あっても、普通の人はそういうものを使わなかった。わざわざそういう面倒くさいものを使うのは、犯罪者かテロリストだけだ、は言い過ぎだけど、たとえば、普通の捜査で確度の低い情報からある容疑者を探し出したとする。そいつが暗号化ソフトで通信してたら、怪しさは2倍くらいになったかもしれない。

でも、その容疑者がWhatsAppを使っていても、それは彼の容疑を補強する間接的な証拠にはならないだろう。WhatsAppを使っているユーザはたくさんいて、暗号化以外にもそれを使う理由はたくさんある。

それに、WhatsAppに追随するベンダーも多いと思う。

これは、ユーザを守るというよりベンダーを守る技術だ。

これを使っていれば、FBIがやってきて「こいつを盗聴しろ」とか言った時に、「できません」と答えるだけで済む。

盗聴ができてしまうと、できるものを断るという判断が必要になって、断るか受け入れるかは難しい政治的判断となる。これは賛否両論あって、どっちを選んでも真剣に怒る人がいる。

会社のポリシーである程度決まるとしても、捜査が正当なものでなかったり冤罪だったりしたら、盗聴を許したベンダーも責められて炎上するだろう。また、アメリカ以外の司法当局からの要請にどう対応するのか。国ごとに方針が違ってもいいのか。

技術的にできないと言えれば、そういう頭の痛い問題からきれいに逃げることができる。

ユーザを第三者からの盗聴から守るだけなら、つまりたとえば公衆LANで隣のテーブルの人に盗聴されないようにする、みたいな話なら、End to End でなくて、ユーザとベンダーの間の通信だけ暗号化すればいい。

End to Endで暗号化するのは、通信を中継するベンダーに盗聴させないためだ。その「通信を中継するベンダー」とは自分のことであるが、FBIに脅されている自分だろう。ユーザをベンダーの盗聴から守ることによって、FBIの圧力からベンダーを守るのが、end-to-end encryption の目的ではないかと私は思う。

もちろん、「ウチの通信は安全です」というアピールもできるので、他のベンダーも同じ機能をサポートするのではないかと思う。

競合以外にも、ベンダーにとってこれを導入する価値はあって、しかも、WhatsAppがサポートしたことで既成事実と技術的標準ができている。急速に広まるのではないか。

もし、そうなったとすると、事実上、盗聴ということはほとんど不可能になってしまうので、司法当局以外からも、それでいいのか!という声は上がるだろう。

そうなったら、Hashicorp Vaultで使われているShamir's Secret Sharingのような技術が使われるだろう。

これを使うと、鍵を5つに分割して、5人の人にそれぞれひとつづつ預けることができる。そして、5人のうち3人が鍵の開示に同意すれば、鍵を開けることができる。

全てのチャットの暗号化キーをこれを使って5つに分割して、5つの国のサーバにひとつづつ送りつけておくのだ。そして、それを開示するかしないかは、5つの国で相談して決めてくれ、と言う。問題がテロリストのような明らかな脅威だったら、開示に同意する国が3つ以上あるから、それを盗聴することができる。恣意的な捜査や強権乱用であったら、同意する国がないので、開示されない。

まあ、これもこれで、鍵をいくつに分割して、どことどこに預けるのかは頭の痛い問題だけど、これは最初に一回だけ考えれば済む。大いに悩んでゆっくり考える価値はある。それを決めれば、あとはシステムが全部自動的に処理してくれる。

暗号化の仕組みは、このように、何をどれくらい隠して、どういう条件でどれくらい見せるのか、自由にデザインできる。実際には、性能の問題が絡むので、もうちょっと難しくて、多少、数学的な発明が必要なこともあるだろうが、ちょっとがんばれば、だいたい自由にデザインできる。

おそらく、そういう安全弁を持たせた、Perfect Forward Security が普通に使われるようになるだろう。

そして、裏口を仕込むのも難しくなる。

昔は、電話局に勤めるエンジニアは、電話回線のないところでは仕事ができなかった。設備を企業の側が持っているので、企業の側をFBIに握られてしまうと、エンジニアが個人としてそれに逆らうことは難しかった。それに、設備は企業の構内になるので、万が一告発されても証拠隠滅は可能だ。

アプリの開発者を脅迫して、裏口を仕込ませるのは、それよりずっと危険が高い。アプリの開発者に必要な設備はパソコン一台とネット接続だけなので、クビになっても他で働ける。その分だけ、正義感で行動する人も多いだろう。変なことを強要して、告発されたら大変だ。アプリが各ユーザの手元にあるので、証拠が残ってしまう。

権力の終焉
権力の終焉

この本に書かれているように、権力の中の人にとっては受難の時代で、考え直さなくてはいけないことがたくさんあるのだと思う。

これはありそうな話だと私には思えるが、技術が組織のクッション無しにダイレクトに社会を支配するということは、個人がヘマをした時の影響範囲がとめどもなく大きいということだ。

金があるなら、ちゃんとした技術者を雇えばいいと思うのだが、単価が高くてちゃんとして見える技術者でもこういう基本的なことをきちんとできない人も多いので、事故も増えるだろう。

昔だったら、あちこちに組織のクッションが入るので、個人のミスは大事になる前にどこかでカバーされたのだろう。

だから、盗聴はできなくなって秘密は漏れるもので、お金や権力があってもそういうことの例外ではなくなっていく。

これが社会に与える影響は、おそらく普通に考えるよりずっと大きくて、必ずしもいいことばかりとも言えないので、それについて少しづつ考え始め方がいいような気がする

ディープラーニングがもたらす横方向の格差拡大

グーグルのAlphaGOという囲碁ソフトがトッププロに2連勝したことで、衝撃が走っている。

私は、囲碁については何も知らないし、ディープラーニングなどのAIの技術についても野次馬的に見ているだけだが、いくつか思うことがあるので書いてみる。

AIは人間を上回るのか?

私は、AIについては単なる野次馬だが、年季が入った野次馬である。80年代から結構その手の本は読んできた。今となっては、書いてあったことはほとんど覚えていないが、ひとつだけ印象に残っているのは、昔の研究者がやたら強気だったことだ。

2001年宇宙の旅」には、HAL9000というAIだけではなくて、iPadのようなものも出てくる。あれは本当にiPadによく似ていて、年代はずれてしまったが未来予測としてはよくできていると思う。それなのになぜAIだけやたら先走っていて、実際よりずっと賢いものになってしまったのかといえば、おそらく取材した当時の研究者があれくらいのものが楽にできると大言壮語していたからだろう。

私が読んだ本にもそういうことがいっぱい書いてあった。

今から思えば笑い話で、ハードはファミコン以下だし、ソフトも単純な文字列や論理計算がようやくできた時代で、なんでそこまで強気だったのかが謎。

私が思うのは、人工知能の研究者は、人工知能やコンピュータには詳しいが、人間のことがわかってなかった。人間の頭が論理処理で動いているのは、ごく一部の例外的な状況だけなのだが、それに気がついてなかった。専門家に「あなたがやっていることをルールとして記述してください」というと、「いいよ、簡単なことだ、まず普通はそれがAかBに注目する。そして、Aならこうする、Bの時はちょっとややこしくて、CとDを比較して違いがなければEにも目をつける」みたいに、一見論理的なことを言う。実際、本人も自分がその論理で動いていると思っている。

でも本当は、そこでAとかBとか言っていることが定義や境界が曖昧で、簡単にコンピュータには理解させられない概念であることがほとんどだ。それに、こういうルールにはものすごくたくさんの例外があって、その例外をルールとして記述しようとすると、その例外ルール同士が矛盾している。だから、優先順位を定義しなくてはならないのだが、その優先順位の定義が、本題に負けないくらい複雑で難解な問題になってくる。

こういうことは実際にやってみないとわからないので、実際にやってない70年代のAI研究者はやたら強気で、その後の90年代以降の研究者は、そういう失敗をたくさん見てきたので、いっぺんで弱気になった。

ディープラーニングは、当時のAIの弱点を克服していることは間違いないと思う。昔のAIはAとかBを定義するのはプログラマにまかせていてそこがネックになっていたが、ディープラーニングは、何がAであるかBであるかを自分で学習する。

しかも、AlphaGOの対局の感想を見ていると、人間の語彙にない概念を使って盤面を評価しているようで、コンピュータの打つ手が人間のトッププロにもなかなか説明できないようだ。人間がこれまで気が付かなかった「Fの時は」とか「Gの場合は」という思考をコンピュータがしているように見える。

だが、再び強気に戻りつつある研究者は同じ間違いをしていると私は思う。

ディープラーニングが人間の頭の中で起こることのある側面をうまくシミュレートしていることは間違いないが、それが人間の知的活動の中でどれくらいの割合になるのかはやってみなければわからない。

むしろ、数値計算と論理計算とディープラーニングができるようになることで、「人間の中にそれ以外のものがあった」ということが発見されるのではないかと予想する。もちろん「それ以外」は文系的な概念としては山ほどあるのだが、もうちょっと明確な理系的な概念として何か大きな発見につながるのではないだろうか。

だから、「ディープラーニングはちまたで言われているほど大したものではない」というのが第一に言いたいこと。

AIは社会を変えるのか?

ただ、大言壮語した昔のAIが意味なかったのかといえば、そんなことはなくて、それどころ、今自分のしている商売は、ほとんどそのひとたちのおかげだと思っている。

今自分のしていることは、ネット上でのサービスの開発、運用だが、今使われている言語や技術は、大雑把にいえば、Lispの子孫だ。つまり、70年代のヘボAIのために作られたプログラミング言語やコンピュータの技術は、AIでなくWebの中で使われている。

人間の言語でなくて、プログラミング言語で書かれたプログラムをASTとして処理するなんていうことが普通に行われていて、これは昔の人が「この技術を使えば、5年でHAL9000ができるよ」言っていた技術だ。

こういうことは、数値計算のためにコンピュータを使っているだけではなかなか思いつかない。

そして、70年代の予想でもう一つずれていたことは、「相当賢いAIを作らなけらば、コンピュータが一般の人も含めた社会全体へのインパクトを持つことはない」ということで、実際には、パケット通信網という地味な技術が世の中を変えた。

昔の漫画のコンピュータは、たいてい巨大なビルの奥に鎮座した筐体になっている。しかし、実際に世の中を変えたコンピュータは我々のポケットの中に入るスマホだ。

問題は、賢いか賢くないかではなくて、スケールするかしないかだ。

ディープラーニングは、言われているほど賢いものは作れないが、スケールするものは作れる。

スケールとするとは、ここでは「急激に安くなって最終的には電卓並の値段で百均で売られる」くらいに思っておいてください。

ディープラーニングは、学習させる時には、膨大なコンピュータパワーを消費するが、その学習結果を適用する時には、そこまではいかない。だから、将来の囲碁ソフトは、電卓のようになって、クラウドから学習結果をダウンロードして動くだろう。

ディープラーニングHAL9000スカイネットではなく、スマホが進化したものとして想像しなければならない。それが世の中を変えるだろう。

AIの開発競争はどこで起こる?

私は、ディープラーニングをちょっとかじってみてムズカシすぎてすぐに諦めたが、じきに私にも手が届く簡単に使えるライブラリやサービスになると思っている。

そうなったら、猛烈な開発競争が起こるだろう。

AlphaGoの成果でもう一つ印象的なことは、進化の速度だ。去年最初にプロと対戦したバージョンは、今よりはるかに弱くて、300位だかのプロにようやっと勝つレベルだったそうだ。

これは結構本質的なことで、ディープラーニングは、詳しいことを教えなくても勝手に自分で勉強してやり方を覚えるというが、その学習のための環境を人間がお膳立てする必要がある。その段階に行くまでが難しい。

コンピュータが自分で学習できるようになれば、あとはマシンを回していくだけでどんどん賢くなるが、その前の段階が難しい。

たとえば、コンピュータに野球の監督をやらせることを考えると、選手のデータを学習させることは簡単で、「打率」とか「防御率」のような概念で今まで人間が使ってない概念で勝敗に関連するものを勝手に見つけて活用するようなことまではすぐやるだろう。しかし、選手の今日のコンディションをどうやって入力したらいいのか、脈拍や血圧を測定するか顔色を画像として読み込ませるか、何か会話してその声色で判断するか。あるいは、選手の出身地や血液型や星座を入力するかしないかいっそのことDNAをぶちこんでみるか、それから観客の様子を画像や音声で入力するか天気予報と連動させるかどうか。

そういうたくさんの選択肢がある中で、難しいのは、ダメな監督だったのが辛抱強く使っているとある日突然野村さんをはるかに凌駕する名監督になることだ。

コンピュータを野村監督にするための入力データや設定が見つかってしまえば、あとは、マシンの計算パワーだけの勝負になるのだが、その前の判断が難しいところに開発競争が起こるだろう。

そして、コンピュータが結果を出すまでは、野球に詳しい人にもAIに詳しい人にもこれがうまくいくのか行かないのかなかなかわからない。

AlphaGoの場合は、モンテカルロ法ディープラーニングと言われているが、重要なのはモンテカルロ法のチューニングやプログラミング技術の細かい所にあると思う。これがうまくできていたから自己対戦による学習が効果的に作用して、急速に強くなった。

問題は、その一番重要なモンテカルロ法のチューニングに成功した段階では、そのソフトはまだ相当弱いということだ。結果から見ると、そのソフトは、世界レベルのトッププロに勝つ将来が約束されていて、障害はほとんどないのだが、それは事前にはわからない。

これから、「自分の作ったディープラーニングは、囲碁で言えば、2015年前半のAlphaGOの段階まで達している」と主張する詐欺師がたくさん出てくる。いや詐欺師ではなくて本人もそう信じているのだが、その中の誰に投資したらいいのか、誰にもわからない。

ディープラーニング水曜日のカンパネラは作れるか?

最近、これにはまっている。

それで、ディープラーニングのことを考えるとどういうわけか、どうしてもこれがAIで作れるかを考えてしまう。

音楽のトラックはケンモチヒデフミという人が全部やっているそうだが、これが全部過去に聞いたことのある音の組み合わせのようでいて、どれも非常に質が高い。全部マックで作っているようだし、こういう音楽はいかにもAIが得意な分野のように思えるが、順列組み合わせだけでできているようで、細かいところに非常に神経が使ってある音楽のようにも感じる。

歌詞は、いかにもデタラメなようで、実は、「民話の桃太郎+ゲームおたく」とか「ジャンヌダルク+バスガイド」のような異質の概念を二つ組み合わせて、あとは連想ゲームとリズムと押韻だけでできているようで、これはディープラーニングを使うまでもなくコンピュータでできそうな気もする。

おそらく、ケンモチヒデフミさん本人がチューニングしたディープラーニングなら、同じレベルのものを作れるだろう。

しかし、ケンモチヒデフミ必須では、ディープラーニングを使う意味がないじゃないかと言うと、そうではなくて、コンピュータ化できれば今と同じレベルのものを即興で作れる。

打ち込みの音楽に即興の要素をプラスすることができるとしたら、いつどこで何をするのか予想できないコムアイのこういう個性がもっと生きるだろう。

それで、結論としては、RPGツクールのような「水曜日のカンパネラツクール」はできるだろうが、彼らが同じものを(もうちょっとだけ金かけて)使えば、彼らはそれよりずっと先を行くだろう、ということだ。

結論

それで、結論としては、ディープラーニングによってスカイネットではなく水曜日のカンパネラのような未来がやってくるという話。これからいろんなところで多くの革命が起こるのだが、それがいつどこでどのように起こるのか予想するのは難しい。その困難さが勃興期だからではなくて当分続く本質的なものであること。

つまり、心配すべきなのは、コンピュータによる専制ではなくて、格差拡大だ。ただし、格差は縦方向ではなく横方向に拡大するということ。「横方向の格差拡大」とは何か、自分でもハッキリとはわかってないのだが、潜在的コムアイのような人が全員自分によく合ったプロデューサーに出会えるようになってそのプロデュース業がディープラーニングによって効率化されているというふうに考えたら、少しイメージできた。

Degica に入社しました

11/2付けで 株式会社デジカに入社しました。

2013年秋から2年間、フリーランスプログラマをやって、うち後半の1年間はデジカで契約社員として仕事していましたが、この度、社員としてデジカに join することになりました。ご挨拶を兼ねてちょっとこの会社の宣伝をしてみようと思います。

契約社員として外から見ていて、次のようなところで、私はデジカに魅力を感じました。

  • リモート勤務を積極的に進めている
  • 意思決定がシンプルでスピーディ
  • 地に足がついたアジャイル
  • 普通に毎日の仕事をしていることがそのまま勉強になる

リモート勤務を積極的に進めている

私は家庭の事情で10年以上前からリモート主体の勤務をしてきましたが、他の人が face to face で仕事をしている中で自分だけがリモートで仕事をするという形態に限界を感じてきました。

もちろん、リモートで仕事をして給料をもらえるというのは、それだけでも十分ありがたいことなのですが、自分が関わっている仕事そのものが face to face で動いていると、リモートでは仕事の流れが見えなかったり、担当できる仕事内容が限られてきてしまいます。

デジカでは、仕事そのものが github や slack などのツールの上で動いているので、リモートで仕事をしていてもそういうギャップを感じることがあまりありません。

他のメンバーも週一回はリモートで作業をしているし、語学研修制度を利用してスペインやカナダで仕事してる人がいたりします。

リモート勤務を認められれても、仕事がそれで回る基盤がなければ、結局、自分だけが「浮いた」存在になってしまい、チームの一員としての仕事はできません。一時はそれを考えて、ずっとフリーランスでやっていこうとも考えたのですが、こういう会社であれば、十分チームとしての仕事をしていけると思って、今回、join することにしました。

意思決定がシンプルでスピーディ

これは、デジカの特色というより、日本の会社と外資系の違いかもしれませんが、余計な神経を使わないで仕事が進められるので楽です。

デジカでは、誰が何を決めているか、何かを聞いたり頼んだりする時誰に言えばいいか、そういうことがわかりやすい。会議に関係ない人は来ないし、自分がなぜ呼ばれたのかわからない会議に呼ばれることもありません。最初は、逆にそれがちょっとカルチャーショックで戸惑いました。

別にすごいことではないし、当たり前のことなんですが、私の過去のキャリアではその当たり前があまりなくて、仕事を進める時に「関係ないけど口を出してくる人」って普通にいるもんだと私は思っていました。だから、自分が直接話をしている担当者に理解してもらうのは最初のステップで、大抵は、その人と一緒に別の人を説得する方法を考えたりそのための資料を作って、ようやく仕事が始まる、という感じです。

仕事の障害がないのではなくて、仕事の障害をクリアした時の徒労感がないという言い方がいいのかもしれません。誰かを説得する必要があるとしたら、必ず明解な理由があって何故その人なのかもよくわかる、だから、説得するための努力が無駄に感じられないし、仮にこちらの意向通りにならなくても納得できます。

感覚的にしか説明できませんが、「誰もいいとは思ってないけど、そうなって変えられないルールがあって、それを変えるコストよりそのルールを回避するためのコストの方が低くて、そのために神経や頭を使う」というようなことですね。そういうことがあるのが当然と思っていたけど、そうでない会社があって、そこでは大事なことだけに神経や頭や体力を投入できる、私にとってデジカはそういう会社に思えました。

地に足がついたアジャイル

デジカでは決済ゲートウェイサービスやecシステムをRailsベースで開発し、自社運用しています。普通にアジャイルです。

特別なプロセスやプラクティスがあるわけではないんですが、開発のスピードが速く、ついていくのはなかなか大変です。

契約社員として働いている間に、私は、Blue Green Deployment のシステムを構築したのですが ( これについては後日、デジカの技術ブログで紹介します)、これもすぐに活用して、さらに deploy のスピードが上がっているように感じます。

普通に毎日の仕事をしていることがそのまま勉強になる

あと、デジカでは開発のコミュニケーションは、Slackやgithubの上で、英語で行っています。

「普通にアジャイル」で「普通に英語」の会社で仕事をしていると、あまり無理しなくても、自分のエンジニアとしてのスキルが日々向上している感覚があります。

これも過去の経験ではあまりなかったことです。今までは、自分が身につけるべきスキルはわかっていても、それを仕事とリンクさせるのが大変だったのですが、今の環境では、目の前の仕事をこなしていくことが自然にスキルアップにつながっている感じがします。

まとめ:力を入れずにそのままでそこそこいい会社

まとめると、私にとってのデジカの魅力は「自然体で(そこそこ)いい会社であり(そこそこ)いい仕事の環境である」ということですね。

無理をしてない、全力疾走ではないということは重要で、振り返り改善していく余地はそこから生まれます。背伸びをしてたり誰か一人のスーパーマンが引っ張っている会社では、つまずいた時の反動が怖いですが、自然体であれば、おそらく少しづつですがさらに良くなっていくと思います。

興味を持たれた方は、下記のページをみてください。

エンブレムデザインにおいて顧客側の代表者に求められること

これは素晴しいエントリで、特に、対象を絞って書いているのがいいと思います。おかげでロゴデザインが、素人には簡単に口を出せない複雑な作業であることは、よくわかりました。

それで、思ったのは、企業の依頼でこれをやる時、顧客側の担当者が大事だろうな、ということ。

ここで解説されているような、デザインのコンセプトやプロセスとかがわかってて、デザイナーサイドとそのレベルの話ができないとだめ。しかも、決まって類似意匠の調査が終わるまで絶対に外に出せないとしたら、少数精鋭じゃないとだめですね。

そして、それ以上に大事なことは、クライアントの意向や判断を代表できる人であるということですよね。それが担保されてなければ、せっかく苦労して決めたものが、社長のツルの一声でひっくりかえってやり直しになっちゃう。

としたら、一流デザイナー(とても個人ではできないので、チームか組織になると思いますが)だったら、仕事に入る前にクライアント企業のガバナンスがどうなってるか気にすると思うんです。これから打ち合わせして草案を見て、「これとこれがいい」とか「もっとこうしてくれ」という人が、本当にクライアントの意思を代弁している人なのかどうか、デザインのことと同様に、クライアント企業自身のことがよくわかっていて、ガバナンスで担保された形でその人に権限が移譲されているかどうか。そういうことがちゃんとしてなかったら、こういう大変な仕事は受けないと思います。

その人が「よしこれでいこう」と言ったそのデザインを顧客側に開示した時に、企業全体として愛着が持てるデザインにならなくてはいけない。そういう人と話をしなくちゃいけない。

喜んでいるのが担当者だけだったら、担当者が提示した要件を満足して法的問題をクリアしててもそのロゴマークは失敗ですよね。

だから、この問題は、オリンピックのオーナー(主催者)は誰だったんだろう?という問題をクローズアップしたんだと思います。

素人が後から結果に口を出すのは確かによくないと思いますが、それだけにむしろ、密室の段階でオーナーをレプレゼントする方々は、そのことを考えるべきだった。いや、それはちゃんと考えてよくわかっててこうなったのかな?

オリンピックとはあくまでIOCJOCのビジネスであって、デザイナーサイド(審査委員会と佐野氏)としては、その意向はよく理解して、クライアントが満足できる成果物を作ったのかも。

いずれにせよ、やっぱりオーナーは高級国民だったんだろと応答した2ちゃんねるはやっり核心を突いていたと思います。

でも、あのバッシングは確かにやり過ぎで、むしろ無関心でいるべきなんでしょうね。

今こそ読もう!「中空構造日本の深層」

これって、天皇=部長、将軍=次長と考えると、サラリーマンならピンと来る話じゃないでしょうか。

つまり、部長がおかざりで、NO2の次長とか部長代理が実権を持って仕切ってる部って、意外と仕事がしやすいということです。もちろん条件はいくつかあって、

  • 部長は大幅に次長に権限移譲している
  • 次長は叩きあげで、現場の細かいことまでよく知っている
  • 部長の「出自」がいい (親会社や銀行からの出向組とか)

これだと、部長と次長が仲良くなくて違うこと言ってても、下の者は迷うことが少ないんです。

部長が、朝礼で何かトンチンカンな方針を言うと、すぐに次長が「あの人は現場のことがわからないから、適当に合わせておいて、今まで通りやればいいんだよ」とかフォローしてくれる。

逆に、部下が失敗して次長から厳しく叱責された時には、部長がフォローしてくれる、みたいな感じで、相互に役割を補完しあっている。

要するに、実務を仕切るリーダーの上に、何もしない人が形だけ立っているっていう形が、日本人にとって受け入れやすいんです。逆に言うと、強いリーダーシップを持った人は、いくら優秀でも一番上に立つと感情的な反発を持たれやすい。ひとつクッションがあった方がリーダーシップを発揮しやすい。

中空構造日本の深層 (中公文庫)
中空構造日本の深層 (中公文庫)

河合隼雄さんはこの本の中で、古事記の中に、このパターンが繰り返しあらわれていると言って、それを「中空構造」と呼びました。

私なりに言うと、「社会のOSとしての神話」という話ですね。OSは起動時にしか自分の存在をアピールするメッセージを出しませんが、マシンが動いている間中、常に裏で稼動しています。同じように、神話は建国というはるかな過去の話のようで、現代の社会の背後で動いていて、アプリケーションプログラムのような今動いている目に見えるシステムの制約となっているということです。

安倍首相が戦後70年の談話の内容を決める時に、天皇陛下の「お言葉」を強く意識されたという話が伝わっています。この真偽はフォローしていませんが、この話を、ほとんどの人が「あり得る話」と受けとったことが重要だと思います。

天皇陛下が、誰かに政治的な意向を述べられたという話は、オフレコの話としても一切出てきませんが、同時に陛下はリベラルなお考えをお持ちで安倍政権の右傾化に懸念を持たれているのではないかという話は、よく聞きます。

河合さんは「中空」が単なるからっぽではなくて、中心への侵入を許さないという意味の存在感を持ちつつも、何も形や意図やエピソードを持たない存在、としていますが、今上陛下は、日本の歴史の中でも特にピュアな形での「中空の象徴」として、日本という国の中心に存在しておられると思います。

もうひとり、「中空の象徴」としての役割を見事にこなしている(いた)人は、2ちゃんねるひろゆきだと私は思います。ひろゆきも具体的なことは何もしない人ですが、多くの2ちゃんねら2ちゃんねるの中心にひろゆきがいることを意識していました。

「おまえら、ひろゆきの前で、そんなマジレスして恥ずかしいと思わないの」

ひろゆきの存在が、2ちゃんねるに最低限の(本当に最低限ですが)抑制となっていたような気がします。ここで言いたいことは言いたいように言うけど、本当はここで言っていることは表に出しちゃいけないことであるというような暗黙の合意が共有されていたように感じます。

それで、河合さんは、こういう日本独特のリーダーシップのあり方と対比して、欧米の社会は、「英雄神話」を基盤としていると言います。

私は、エアフォースワンハリソン・フォードとかスタートレックのカーク船長のことかなと理解しました。つまり、リーダーは自分でどんどん決断して前に出て行く人がいいということですね。そういうタイプのリーダがなじみやすいし、そういう人に率いられている国には神の庇護があるという感覚です。

「英雄神話」には、「剣でモンスターを切断する」という重要なモチーフがあります。この「切断する」という働きが、科学技術を発展させてきた。科学は真と偽をまっぷたつにすることで、英雄神話になじみやすいんですね。

法治とかアカウンタビリティとか市場とか、そういうルールとプロセスを明確にするという近代国家のベースは、全部この「英雄神話」というOSの上にのっかっているということです。

だから、これを別のOSで動かすには、エミュレータ層が必要になって、このエミュレータはアプリケーションレベルに見えているので「意識高い系」とか揶揄されたりしてしまいます。エミュレータの上で動いているアプリと、OSに直接乗ってるアプリの間では、通信がうまくできないのが、明治以来の日本の宿痾です。

ここまででもお腹いっぱいですが、さらにこの一つ上のメタレベルに河合さんの最も重要なメッセージがあります。それは、「神話を言語化せよ」ということです。

これは、社会契約説のことを考えると、よくわかるような気がします。

これって、神話レベルから実務や学問のレベルに連続的に話がつながっているんですね。

河合さんとか井沢元彦さんとか阿部謹也さんの本て、どちかと言えば学説や論文でなく「面白エッセイ」として読まれていると思います。本の内容でなく読者への受容のされかたが「面白エッセイ」だと思います。

でも、ロックやホッブスだって、出た時は、同じように「面白エッセイ」だと思うんです。「自然状態」とか「一般意思」なんて、典型的な「お前がそう思うんならそうなんだろう お前ん中ではな」です。河合、井沢、阿部あたりとそんなレベルは違わない。

違うのは、後に続く人たちが、ロックやホッブスに厚みを与えていったことですね。歴史的な検証をして、哲学的にも深めて、その後の時代に合わせてフォローしていった。それによって、「社会契約説」というWikipedia の項目は個人名とは別の項目になっています。脱属人化して実務レベルとのインターフェースが整備されてる。

その結果できた「社会契約説」には普遍性があるので、2ちゃんねるでも自民の憲法草案のスレッドとか見てると、これを解説してる人がたまにいたりします。相対性理論が誰にでも勉強できるよう社会契約説も本読めば誰でもわかるんです、今は。日本人は、河合、井沢、阿部あたりから、同じレベルまで持ってかないといけないと思うんです。

実は、河合隼雄が死んだ時は、私はすごく腹が立ちました。「今こんな大事な時に、河合隼雄が死ぬなんて、そんな無責任なことが許されると思うのか」と思ったんですね。

それで、この文を書き出しに追悼エントリーを書きはじめたんです。「しめしめ、ここからあちこち寄り道しながら強い尊敬の念を表現する所にもってけば、面白いエントリーが書けるぞ」と思ったんですね。

ところが、いくら考えても単純な罵倒の言葉しか出てこなかったので「ああ、自分はどうもこいつが死んだことに本気で腹を立てているらしい」と気がついて、追悼エントリーはあきらめました。

この「中空構造」をもう少しちゃんと書いてほしいと切実に思っていたのですが、まあ、今考えると、あの人がいくら書いても「面白エッセイ」にしかならないので、その望み自体がちょっと的はずれだったような気がしますが。

私は利権ってどこにでもあるし一般的にはそんなに大きな問題ではないと思っています。でも日本の利権は、暴走して自滅してしまうんですね。ネット私刑なんかより、状況判断ができない利権のほうがよっぽど怖いですよ。

利権が状況判断できなくなる時は、「中空構造」が壊れている時で、そういう時こそこれを言語化する必要がある。修復するにせよ、破棄して別のOSに乗りかえるにせよ必要。英雄神話的コンプライアンスに実質を持たせるためには、これを相対化することが必要で、その足場として、「中空構造」を「面白エッセイ」以上のものにした上で、英雄神話と対比することが必要です。