ランサーズ等のサービスを開発・運用する中で得た知識やノウハウを紹介しています。

Labels:  開発よもやま 投稿者:yokoi

プロトタイプアンチパターン「愛ゆえに」

ランサーズ Advent Calendar 2016 1日目の記事です。

CTOの横井です。僕は単騎で新企画とかやるときは、とりあえずプロトタイプベースで進めていくことが多いです。

その甲斐あってなのか、プロトタイプで終わったもの、社内ツールとして使われたもの、プロダクトとしてリリースしたもの等等含めて、ランサーズ来てからの1年半で、0からつくったものが大小合わせて30本くらい自分のプロジェクトディレクトリにありました(ちょっとしたコマンドとかライブラリチックなのは除いて、画面があるもの限定です)。

前職の受託開発時代とかもプロトタイプベースでお客さんに提案していたり(週1で客先でプロトタイプノックをすることもありました)したので、そう考えるとトータルでは結構つくってきた気もします。

今回は、そんな自分がプロトタイプづくりを経て感じたアンチパターンを紹介したいと思います。
 

プロトタイプアンチパターン 愛ゆえにパターン

最大の敵はプロトタイプに愛を抱いてしまうことだと思います。実現したいこと、届けたい価値に愛を持つのは大事です。大事ですがプロトタイプそのものに愛を抱くと大抵不幸な結末を迎えることになります。まさにサウザー様が言っていたとおりです。愛ゆえに人は苦しまなければならぬのです。

以下にプロトタイプに愛を持ってしまうとどうなるかの例を書きます。

折角つくったのにみんなが見てくれない! 試してくれない! と鬱々とした気持ちを抱えながら日々を過ごすことになる

結果1年後くらいに「あのときのプロトを続けていれば……」みたいな怨霊と化す

プロトタイプを見せるプレゼンの場で、上手く動かない! となったときにみんなに見せたい気持ちから、突然その場でバグ探しとか、見せよう見せようとして結果全員に物悲しい時間が訪れることになる

仮説が成立していないことがわかっても、プロトタイプを捨てたくなくなり、ついついそれを守るための理屈を考えてしまう

「じゃあ仮説の方向性を変えて……」のときにもなんとか今のプロトタイプを変更することでどうにかならないか考えてしまう

 
……耳が痛い!

つまるところ、これって手段が目的化しちゃったって話なんですが、じゃあどうするかっていうと単純で、プロトタイプそのものには愛を持たないようにすることがコツかなと思います。
そもそも、本来的に仮説を検証するための手段としてのプロトタイプになんで執着しちゃうのかって話なんですが、これはもう手間をかけちゃったからだと思うんですね。自分のコストを投下すればするほどもったいなくなってくる。なので、愛を持たないようにするための手段としては「時間をかけない」「(作り方そのものについては)悩まない」というところかなと。

時間をかけない、って意味だと、例えばプロトタイプ開発用に必要なものが揃ったスケルトンプロジェクトみたいなのをあらかじめつくっておくとか、それに適した技術選択にしておくとかがあります(自分の場合だとフロントとサーバーサイド両方での思考のスイッチングコストを減らしたいのでサーバサイドはNode.jsでやっちゃうことが多いです)。

悩まないという点では、もうとにかく色々なパターンを知っているか、過去につくったことがあるか、がものをいうかと思います。まあ、そういう意味では一つのプロトタイプづくりは、次のプロトタイプづくりを更に早めるための経験値稼ぎでもあります。それの極北は、めんどくさいところを勘で察して、程々にごまかすなんちゃって実装の知見だったりします(これは完全にプロトタイプづくりのみのためのスキルですが)。

個人的な指針としては、午前中で一段落つくかどうか、みたいなものを置いていたりします。

丸一日かけちゃうと、それを捨てざるをえないときに「無駄な一日だった……」と悲しくなっちゃいますが、午前中だけだと仮にまるっと捨てても「午前中調子出なかったなー」くらいの軽い気持ちでいられるのです。

勿論これは僕個人の感情にのみ由来する話で、本来的にはプロトタイプを捨てるとはいっても、無駄になるわけではなく、必ず得られるものがあると思っています。ただ、それと、自分が無意識的にでも抱いてしまう感情の折り合いはどうにかつけていくしかないかなーと。

といいつつも、またうっかりプロトタイプそのものに愛を抱いてしまって、執着して、を繰り返しているので、人生は修行だなーと思います。

ランサーズではサービスを成長させてくれるエンジニア、デザイナーを募集しています!
ご興味がある方は、以下URLよりご応募ください。


【中途採用】
フロントエンドエンジニア
サーバーサイドエンジニア
コーポレートエンジニア
SREエンジニア

【新卒採用・その他】
21・22新卒
その他採用情報

関連記事

thumbnail
日々のスケジュール管理

この記事はランサーズ Advent Calendar 2016の12日目です。 はじめまして、最近ニュースでFitbitがPebbleを買収することが確定してしょんぼりな プロダクト開発部のakin.です。 今回はAdvent Calendarの場を借りて、ボ …

ランサーズ開発合宿2017@湯河原温泉おんやど恵

こんにちは。ランサーズの @sayaです。 先月末、湯河原温泉で第3回開発合宿をしてきたので、その模様をレポートします。 今回は幸運にも「湯かけまつり」という楽しいお祭りの開催と重なり、大いに盛り上がる合宿となりました。 テーマ 今回のテーマは「開発を最大化す …

thumbnail
今年、エンジニア ライフハックで効果があった施策はこれです

はじめに ランサーズ Advent Calendar 2017 6日目の記事です。 こんにちは。開発部 ビジネスインフラ担当の土屋です。 CakePHP、Ruby on Rails、Salesforceなどを使って社内メンバーが利用する業務システム、会計システ …