「多分動くと思うからリリースしようぜ」
エンジニアの方々は下の画像を一度は目にしたことがあるのではないでしょうか。
なんとも言えない味のある画像と文言ですが、これは Meta (旧 Facebook) の CEO マーク・ザッカーバーグの書いた文書に現れた言葉です。
原文は Done is better than perfect というフレーズで、 「完璧を目指すよりまず終わらせろ」 という訳も広く出回っています。
この記事では、このフレーズの本来の意図するところを、原文をもとに読み解いていきます。
マーク・ザッカーバーグが好きな人は今よりもっと好きになれるかもしれませんし、ザッカーバーグが好きでない人はちょっとだけ好きになれるかもしれません。
投資家への手紙 The Hacker Way
Done is better than perfect は、2012年に Facebook が上場する際にザッカーバーグが 投資家に向けて書いた手紙 The Hacker Way(全文はここで読めます) の中に登場します。
この文書の要点をざっとまとめてみようと思います。
Hacker Way という文化
ザッカーバーグは、 Hacker Way という Facebook 独自の文化について、次のように述べます(かなり意訳です)1。
「より開かれた世界にし、より人々が繋がる世界にする」というミッションのもとで偉大なサービスを作り上げるには、会社を強くしていく必要がある。
そして会社を強くするために、デキる人達を惹きつけてやまない環境、すなわち 「世界に巨大なインパクトを与えられて、他のすごいヤツらからもたくさんを学べる」 という最高の環境にすべく、奮闘している。
そんな中で我々は "Hacker Way" という、独自の文化を築き上げてきた。
ハッキングとは・ハッカーとは
そして、ハッキングとは 「何かを素早く作り上げることであったり、どこまでできるかという限界を試すこと」 であって、本来は決してメディアで使われる「悪いことをする人」ではないんだということを説明します。
たしかに「ハッカー」という言葉は世間では、サイバー犯罪など悪事を働く「クラッカー」として使われることが多いです。ハッカーは本来、ポール・グレアムの『ハッカーと画家』や、Eric Raymond の「ハッカーになろう」で言及されるように、めちゃくちゃにカッコいい人たちをさす言葉なのに、常日頃とても残念に思います。
Hacker Way、ハッカーに憧れる人間からするととても素敵な響きなのです。
Hacker Way とはなにか
続いて Hacker Way の説明があります。ここはめちゃくちゃ大事かつ深みがあるので、原文を掲載します。
The Hacker Way is an approach to building that involves continuous improvement and iteration. Hackers believe that something can always be better, and that nothing is ever complete. They just have to go fix it — often in the face of people who say it's impossible or are content with the status quo.
拙訳はこんな感じです。(ここもかなり意訳です)
Hacker Way は、「継続的に改善を繰り返す」というものづくりのアプローチだ。ハッカーは、「ものごとは常によりよくなりうること」そして「改善する余地がなくなるなんて永遠にないこと」を信じてやまない。
ハッカーは、「もう充分でしょ」とか「そんなの無理」と言われようが、ただひたすらより良いものを作ることを追求するのだ。
ものごとは常によりよくすることができ、それゆえ完璧という状態が訪れることは永遠にない。ハッカーはそう強く信じており、常により良くするよう行動をとると述べられています。
Hacker Way の具体的な行動
そして、その信念に基づく Hacker Way の具体的な行動が述べられます。
この中で Done is better than perfect が登場します。ここも文脈をお伝えするために原文をそのまま引用します。
Hackers try to build the best services over the long term by quickly releasing and learning from smaller iterations rather than trying to get everything right all at once. To support this, we have built a testing framework that at any given time can try out thousands of versions of Facebook. We have the words "Done is better than perfect" painted on our walls to remind ourselves to always keep shipping.
ハッカーは、一気に全てを「正しい姿」にしようとするのではなく、素早いリリースを細かく繰り返して色々なことを学び続けることによって、長い年月をかけて最高のサービスを作り上げていく。
そのために我々は、いつ何時でも Facebook の数千のバージョンを試すことが出来るようなテスト・フレームワークを作った。
そしてまた我々は、新しいバージョンを絶えずリリースし続けることを肝に銘じるため "Done is better than perfect" という言葉をオフィスの壁に掲げている。
ここまで読んでみると、Done is better than perfect の本当の意味合いは、 「(存在しえない)完璧なものを目指すよりも、とりあえず作ってリリースしてみる方が大事である」 という考えであることが分かります。「完璧なものは存在しない」という信念ゆえに、「完璧なものにするにはどうしたらよいか」ということをウダウダ議論することを是とせず、作って世に出す人こそ偉大といった価値観です。
多分動くと思うからリリースしようぜ
とすると 「多分動くと思うからリリースしようぜ」 というのは、実はかなり絶妙な訳なのでは…と思い至ります。(念のためもう一度画像を掲載)
「もしかしたらまだバグが…」とか「もっと時間をかければ良くなるかもしれない」と思っていつまでもリリースしないことは 完璧を目指すことに近く、いったん出来たものは世に出して、その後もまた絶えず改善を続けるべきという Hacker way の考えは 「多分動くと思うからリリースしようぜ」 とそんなに遠くないのかもしれません2。
僕個人でサービスを開発・運営していることもあり、この文書には非常に共感も多く、偉大な文書だと思います。 Hacker Way という考え方は、エンジニアとしてサービスを絶えず磨いていこうという気持ちにさせてくれます。
原文も平易な英語で書かれていてとても読みやすく、それでいて心に訴えかけるものがある文書だと思うので、もし興味があれば読んでみると面白いかもしれません3。
-
原文では、真ん中あたりの
Our Mission and Our Business
の内容と、Hacker Way
の冒頭です。 ↩ -
「多分動くと思うからリリースしようぜ(。早くリリースしてとっとと飲みに行こうぜ)」や「多分動くと思うからリリースしようぜ(。まぁ障害起きても知らんけどw)」だとちょっと違う気もしますが、「多分動くと思うからリリースしようぜ(。そんで今後もさらにもっと磨いていこうぜ)」だと近いかもしれません。ただ、なんとなく前者のような響きを感じてしまうのは僕だけでしょうか。 ↩
-
そして、Facebook の勢いがすごかった当時 2012 年から 12 年の月日が流れた今の凋落ぶりを見ると、また諸行無常の響きを味わい深く感じられるかもしれません。 ↩