失敗を恐れるな、むしろとっとと失敗しろ
Google[x]のAstro TellerのSXSWでの講演から。
凧を上げて風力発電するプロジェクトについて彼が話しているときに面白いエピソードがあった。
通常の風力発電は設備も金もかかりすぎる。高度が高い方が発電量は増やしやすくなるが、当然相対的に費用が増す。しかしその課題を克服し、試作品がある程度うまく動作したことを彼がラリーペイジに報告すると、ラリーが言ったのが「すぐ同じのを5個作って全部壊すまでテストしろ」だったという。
壊すことで学習スピードは速くなる、という意味合いだ。
これには非常に現実主義的な示唆が含まれている。
強度計算をしてから橋を造る
そりゃ計算するのが普通だ。間違いなく例外は無いだろう。
しかし実際は次のステップでミニチュアを作ってテストする(壊す)のだ
橋なら前例がたくさんあるし、理論もほぼ固まっている。想像だにしないトラブル、というのも出尽くしているだろう。
それでもやはり実物を作る前にテストをする、それは皆承知納得済みのことだ。
では、もし「今まで誰もトライしたことがないこと」が命題だったとしたら。
理論値やシミュレーションや想定ケースはどれだけあてになるのだろうか?
それを一個一個潰しながらいくという地道な作業は確かにエンジニアリングの一側面なのだが、それではあまりにスピードが遅い。
手っ取り早い解決策はなんだろうか?
とりあえずやっちゃって失敗することだ。
失敗からは非常に多くのことを学びとれる。エンジニアなら誰でも知っていることだ。
生産開始直前に仕込んでしまったバグ、ずっと気になりながら放置していた例外処理、不十分だった耐熱評価、想定スペック外の使用ケース、その他諸々。
失敗は多くの「やっちゃいけないこと」やそれらの「典型的な解決法」を教えてくれて、その積み重ねはいずれ「勘所」という掛け替えのない財産へと昇華される。
それまでに何年かける?何製品作る?
ええい、めんどくせい、とっとと失敗してこい!と。
これは一方で至極論理的な思考とも言える。
様々な論証法においてよく言われることだが「100%存在しないことを証明するのはほとんどの場合で不可能」
全ての例外ケースを網羅し検証することなど困難を極める。
つまり「◯◯の反例が存在しないことを示せ!」というのはある意味ハメ技で、ディスカッションにおいては通常悪意と攻撃性を付加して用いられる非合理的・非生産的なセリフだ。
そしてこれは開発においても似たようなことが言える。
失敗する可能性がないことを100%保証することなど不可能だ。そしてそれを突き詰めることほど時間をドブに捨てる行為はない。
しかし反面、「理論的にはこれで行けるはずなんで、う〜ん、行っちゃいます!」と言われただけでは皆不安になるのは確かだろう。「理論的には」とか「理想的には」というのは多くの場合で例外ケースに弱く、実際は落とし穴がいくつも存在する。それを感覚的に知っているからだ。
そういうときに支えとなるのは大抵「経験」や「実績」だ。
「誰々さんに任せておけば大丈夫『だろう』」「彼の実績からいくと比較的リスクは低い『と思われる』」
こんな調子。
しかし、さて、もし対象が全くの新規領域、誰も真の意味での専門家はいないし、過去に誰も成功したことがない領域だったらどうなんだ?とは先ほどと同等の問いだ。
だったらまずいっそのこと何度かその落とし穴に落ちてみて、「ここに結構深刻な落とし穴、あっちに小さい落とし穴がいくつか、その向こうに落とし穴っぽい形跡がありました。だから私はコレコレこういうルートで進めようと思います」というように開発プロセスを構築するのは至極妥当な良案のように思える。
当然例外ケースの網羅など全くもって出来ていないし、場合によっては理論的検証も不十分かもしれない。しかし、既に目ぼしい落とし穴は発見してあって、開発者たちがそれら穴に落ちたあとのリカバリーやそれ自体の回避の仕方を学習していたとしたら、今後新たなトラブルが発生した際にその解決能力、さらにはトラブルの察知能力が著しく高まっていることは言うまでもない。
結果、最速で最良のものを作り上げることへと繋がるのだ。
一見乱暴、一見暴論、普通は「壊します」なんて言って予算が降りるわけがない。
しかしそれが「新参者が古参に勝つ方法」だったり、「未踏の地へ最速のスピードで至る方法」だったり、「ゼロからイチを生み出す方法」だったりするわけだ。
これって日本人のような繊細な民族には比較的馴染みのない手法かもしれない。
しかし考えてみよう、レゴを「学ぶ」ことから始める子どもなんていない。でもいくらかのカットアンドトライの末にあっという間に組み立てれるようになる。そしてそうやってものごとを覚えた連中は、軽々と大人の発想を越えていく。皆よくよくよーくよく知っていることなのだ。
最後に、Astro Tellerが言っていた「世の中を、10%便利にではなく、10倍100倍便利にするために必要なこと」
“Creative, Productive and Failure”