2011年11月21日月曜日

プロトタイプベースハードワーク

世界を変える良いモノ、サービスを生み出すにはどうすればよいか?
どんなに賢い連中が集まっても、最初から何を作れば良いか分かっているケースなどは存在しない。だからこそ、特に最初のうちは「作っては壊し、作っては壊し、ユーザーに本当の価値を提供できるまであきらめない」姿勢が大切で、それにはソフトウェア・エンジニアがステーキ・ホルダーであることが不可欠なのだ。そんな大切な時期に創業者が仕様書だけ書いて、実装は外注に丸投げしていてはコストがかかりすぎるし、決して良いものはできない。 [テクノロジー・ベンチャーにはなぜソフトウェア・エンジニアが不可欠なのか?]
最近 lean startup なる考え方がはやってますが、これはどういうことかというと、 トライする回数 × 成功率 = 成功 という式で、成功率の方をあげることは不可能なので、トライする回数を圧倒的に増やすのが成功の鍵だ、という発想なり。 サービスを作って、世に出して、使ってもらって、ユーザのフィードバックをもとに改善、改善などという生易しいものではだめそうだったら一度アイデアをスクラップして別のアイデアで再トライ、というプロセスをどれだけたくさん繰り返せるかが大事でっせ、ということです。 [エンジニアでないファウンダーは最大1人まででお願いします。]
要するに、何が本当に世界を変えるかなど、それを世に出してみるまではわからないのだから、とにかく「これぞ」というものをいろいろトライするしかない。
 成功するまで何回もやり直す「根性」は必須である。

 しかし根性以外にも必要なものがある。
その意味でも,プロトタイプはできるだけすばやく作ることが大切だし,最初から「このコードは捨てても惜しくない」と心に決めて取りかかることが重要である。だからと言って,けっしてでたらめなコードを書けばよいわけではなく,プロトタイプとはいえども,インタフェースの設計はキチンとし,手を抜いたところにはきちんとコメントで説明を書いておく。 アイデアを見える形にしてこそのエンジニア
遅く念入りな仕事は早すぎる最適化だ。むしろプロトタイプを素早く作り上げて、それによって新しいアイデアを得ていくほうが良い。 [ハッカーと画家(ポール・グレハム)]

 アイデアを思いついた瞬間に、速攻で手を動かしプロトタイプを作ること。
 それも「捨てても惜しくない」という姿勢で、膨大な量のコードを短時間で生み出す力が必要となる。 
 そして、それを可能にするためには、圧倒的な「技術力」を持ってなければならない。
凄腕のプログラマは半月で百万ドル相当の仕事をすることだってできるだろう。平凡なプログラマは同じ期間で、ゼロどころかマイナスの富を創ることだってある(バグを入れるからね) [ハッカーと画家(ポール・グレハム)]
優秀なエンジニアとそうでないエンジニアの生産性は(誇張抜きで)20対1ぐらいである[ ソフトウェアの仕様書は料理のレシピに似ている]

 凄腕と平凡の差がこれほど開いているであろうことは、今の自分でも想像がつく。プログラミング初期は、今なら10分で解決できるバグに、一日中悩まされたということがよくあった。
 プロのレベルになればなるほど、問題は複雑化し、スマートに解けるかどうかで生産効率に何十倍の違いを生み出すであろうことは想像に難くない。

スティーブ・ジョブズは、ベンチャー企業の成功と失敗は最初の10人の従業員で決まると言ったことがある。私もそれに同意する。もし言い換えられるなら、最初の5人と言ってもいいだろう。[ハッカーと画家(ポール・グレハム)]
超優秀な技術者集団を集めるにはどうすればよいか?

0 件のコメント:

コメントを投稿