Ruby

【まつもとゆきひろ氏講演】イノベーションの多様性 レポート #matz_sansan

はじめに

Ruby開発者まつもとゆきひろ氏特別講演 ~イノベーションの多様性~ -Goodfindに参加してきました。まつもとゆきひろ氏とは、Rubyというプログラミング言語を作った人です。そこでこの記事には、まつもとゆきひろ氏(Matz氏)が語った事を紹介しつつ、最後に自分の感想をまとめたいと思います。

イノベーションとはそもそも何なのか?

イノベーションという言葉はHotなWordでよく企業とかで使われているが、「イノベーションの定義って何?」って言われたときに、

良く捉えがちなのが、「不連続な(技術)革新」のことと言われていて、

既存の技術の改善ではない、今までのものを破壊してでも新しいものを導入する「破壊的イノベーション」で不連続な(技術)革新がイノベーションという言葉のイメージだと私たちは思っているが、

「実際のイノベーションって何か?」をもうちょっと考えてみると、Matz氏はAppleを例に以下のように述べた。

イノベーションとは技術革新ではない

イノベーションを起こした人、あるいは起こした企業を一番イメージするのは何ってなったときに、Matz氏が身の回りの人から聞いてきたところ「Apple」っていう名前を出した人が多かった。それを率いたスティーブ・ジョブズがイノベーターであるというイメージを持っている人はかなり多いと思うが、

Appleのイノベーションの典型と言われたiPhoneは最初のスマートフォンかって言うと、

No
そうではない

またApple Watchは最初のスマートウォッチかと言うと、

No
そうではない

世界を変えたiPadは最初のタブレット型コンピュータかと言うと、

No
そうではない

Appleより前にMicrosoftなどの企業がタブレット型コンピュータを出していたが、全然売れなかった。
だがAppleがiPadを出したときに、最初ではないけど、新しいマーケットが成立して、タブレットが当たり前の世の中になった。

つまり、最初に新しい技術を作ったからイノベーションと言われる訳ではないとMatz氏。

イノベーションとは社会にインパクトを与えること

じゃあ「イノベーションって何だ」って、Appleがやったことから考えると、
Appleが全く0から考えたデバイスであるとか技術であるものってそんなにたくさんない、
また、どっかで開発された技術を買ったり、採用したりと自分たちで0から作ったものはそんなにないが、
Appleは社会にインパクトを与えてきて、新規の成功をしてきた。

つまり、イノベーションとは社会にインパクトを与えること、または社会に変化を起こすことであるとMatz氏。

イノベーション(変化)を予測することは難しい

ただ「イノベーションがいい方向に働くとは限らない」と更に話は続く。

例えば、
昔は馬車が当たり前だったが、今では自動車が当たり前になっている。
新しい技術が来ても決してレコードは無くならないと思われていたが、今ではあまり見なくなり、CDというのが出てきた。
またガラケーからスマホに変わったように、
イノベーションによって、自分たちが関わっている産業が壊れるかもしれない。

ただ、イノベーションを予測することはできないし
それを止めることもできない。
これは世の中の変化が早いからであるとMatz氏。

じゃあ変化が早い世の中でどう生きていくか?

一つの方法として、「イノベーションを作る方に回る」という話になった。

積極的にイノベーションを起こそうっていう世界は、
割と活気があるので、仮に失敗したとしても、業界全体に余裕があるので、
余裕があるということは、業界全体に生存可能性が高まるとMatz氏。

そして以下の発言に続いていく。

新しいことに挑戦しない企業はどのみち衰退して行くので、
不安定かもしれないけど、活気のある元気のあるところで新しいものを作って、
失敗したら失敗したで転職すればいいやというポジションの方が、
いい可能性が高い。

つまり、リスクを取らないことがリスクであり、
イノベーションの起きるところにいるというのは結構重要と話が続く。

コントロール可能な環境の方が生産性が高い

世の中理不尽が多い中、
自分で決めたハードルのために仕事が大変になるのと、
クライアントが決めてそれで仕事が大変になるのは、
同じくらい大変でも、自分が決めた大変さは我慢できるが
他人によって押し付けられた大変さは、それが同じくらい大変でも、あるいはそんなに大変じゃなくても、我慢しづらい、

つまり、働く人は
コントロール可能な環境の方がやる気が出て、生産性が高い
なので、自分のコントロール可能な領域をどれだけ広げられるかどうかは、重要な選択肢の要素として、考えないといけないと話が続く。

イノベーションにも段階があり、自分にあったところを求めないといけない

ハイプ曲線(参考Wikipedia)を出して、
イノベーションには異なる段階、異なる状況、異なる才能が求められるとMatz氏。

  • 0を1にする...何もないところから全く新しいものを作り出す、全く新しいドメインの開拓
    ex) アインシュタインの相対性理論
    知識も必要ですし、才能も必要、何よりも運が必要、すっごい大変な領域。

  • 1を10にする...技術的には使い物にならないものをある程度使い物になるものにする
    ex) ruby...プログラミング言語というドメインは存在している
    Matz自身はプログラミング言語っていうものにすごい関心があって、
    だからそこばっかりやってて、そこ狙う人は少なかったので、幸い生き延びることができたという。

  • 10を100にする...プロダクトの実用化のレベル

  • 100を1000にする...安定期

と、いろんな段階があり、
ポジションが「0を1にする」が素晴らしいとか、「1を10にする」が素晴らしいとかはなくて、
自分はどこに向いているか、今どこを目指すべきか、
大まかな方向性を決めるのは大事だとMatz氏の話が続く。

ほとんどの間違い(バグ)は思い込みである

プログラマーの活動を見ているとあんまりタイプ速度は早くなくて(会場笑)、
何をやっているかというと、考えているか、デバッグをしている

つまり、ソフトウェア開発者って間違い探しをやっているんだけど、
この間違いはほとんど思い込みから生じていて

だから、人間の脳は思い込みに弱いから、「思い込みというキャッシュをクリアにすることで優れたプログラマーになれる

そこで、日頃から、考える習慣を意識的に作ることが大事と話していました。

まとめ

  • イノベーションとは技術革新ではなく、社会にインパクトを与えること
  • 変化が早い世の中、生きていくにはイノベーション(リスク)が起きているところにいること
  • コントロール可能な環境の方が生産性が高い
  • イノベーションにも段階があり、自分にあったところを求めないといけない
  • 思い込みを排除することによって優れたプログラマーになれる

感想

非常に素晴らしい講演でした。今回の講演の内容はエンジニアに限らず、働く人、あらゆる人に適用できるのではないかと思いました。

また、私自身今までにない新しいものを作ったらそれがイノベーションって思っていたが、そうじゃなくて、作ったもので世界を変えることができなければイノベーションではないということを聞いて確かになぁって思いました。

そして、日頃から色々なパターンを考えて思い込みを排除して、いろんなことにチャレンジをしていきたいと思いました。

とにかく、素晴らしい発見のある講演でした。

登壇者であるまつもとゆきひろ氏、主催のスローガン株式会社さま、Sansan株式会社さまにはこのような素晴らしい講演の場に参加させてくださいまして、深く感謝を申し上げます。