コードが書ける起業家の条件

もし起業家が最小限のコストで起業するために、起業家自身がコードを書かねばならないとしたら、そこに必要な要素とは、

「極論、コードの質もセキュリティもめちゃくちゃでいいから、初期ユーザーを熱狂させ、開発者を採用する入り口になる未来を提示できる能力」

だと思う。創業者が技術者であろうがそうでなかろうが、テクノロジがコアコンピタンスであってもなくても、運用における成長のフェーズはチームに任せなくてはいけないのは変わらない。創業者がCEOになるかCTOになるかの差ぐらいしか無くて、そこはどんなタイプの起業家であっても、誰かに任せないといけないというのは変わらない。

って書くと、昔の某氏騒動が思い起こ出されるし、理屈上は踏み台になって危険だという話もあるので、こんなことを書くと怒られるのだが、正論で完璧を求めるのは簡単だけど、コードの質、セキュリティやスケーラビリティを必要条件にするのは「素人はコードを書くな」って言ってるだけで、ハードルが高すぎると思っていて、あくまでメンタリティとして聞いて欲しいが、誰にも注目されないプロダクトを作っても、そのコードは世の中に存在しないも同じ。プロダクトがダメなら、どんなに完璧なコードを書いてもそもそも狙われもしないのです。wordpressが狙われるのは世界中のwordpressが同じコードだから攻撃の効率が良いので狙われるわけです。

注目されるサービスを出すと、気前の良いアーリーアダプターの人達が、HTMLのコードの質を評価したり、攻撃コードでいじってくれるケースはありますが、ビジネスが深刻化しかねない問題は親切にも教えてくれると思う。つまりせいぜい嘲笑されるぐらいで済む、ということで、めでたく直す理由ができました!

もちろんそのまま放置すると崩壊するので、直す。徹夜で直す。そのままだと続かないからチームを作る。そこからが専門のエンジニアの仕事で良い。

ユーザーが増えてから、構造をフレームワーク化したり言語を変えるのは、サービスが大きくなればなるほど面倒くさくなるし、難しくなるので、どこかで「ちゃんとするため」に成長と停滞がオーバーラップするタイミングが必要で、そこがこういうタイプの創業者にとっては我慢のしどころ。そしてミスは絶対にできない。参加するエンジニアには、そこを乗り越える技術とスピードと器用さ、あと大切なのがプレッシャーに負けない精神力が必要。絶対に大きなミスはできませんからね!!

もちろん最初からうまくできてるに超した事が無いのは当たり前のこと。更に最近はシードアクセラレーターが充実していて、最初からチームで動き、CTOがいることが出資の前提になってたりするので、創業者がお金がなくて、という流れでコードを書く要求自体が減ってると思うので、正直言うと創業者がコードを書ける必要は無くて、優れたプロダクトマネージャーであれば良いと思ってるんだけど、あえて冒頭の条件において必要な条件を出すのであれば、セキュリティにしろスケーラビリティは絶対的な必要条件ではないと思っている。

それよりも初期のツイッターみたいに落ちまくってもユーザーの熱狂が覚めないプロダクトを作るほうが起業家には重要ということですね。その種さえできていれば優秀なエンジニアが助けてくれるよ!きっと!(というか、そこで優秀なエンジニアに手伝ってもらう能力の方が1000倍ぐらい重要で)

あと余談だが、Webサービスで、途中で言語を切り替える時の難しさの話で一つ書くと、CookPadさんは元々がcoldfusionだったというのがRailsに変えるときに腹をくくる要素だったのはあるのではないだろうか。人材採用が絶望的ですもんね。もしPHPで書いてたらRailsになっていたのかなぁ。言語変えてもユーザーにはメリットないですから決断、難しいんですよね。そもそも切り替える必要性があるのか?!という部分は、経営者、事業責任者のビジョンのレベルで必要です。一時的な停滞とユーザーに迷惑をかけるリスクを受け入れることになりますからね。でも、そうは言っても、そのお悩みは鶏卵なのです。スタートアップは、自分たちにとって一番スピードが速い言語がやっぱり一番良いと思います。

【PR】ご意見、感想などは是非、mstdn.fmのローカルタイムラインでお聞かせください