2011/08/01

trippiece α リリース、または、シードベンチャーでのエンジニアリングについ て

trippiece αバージョンのリリースを今日20時に行います。前回のプレリリースから45日経ちました。新しいメンバーも入り、trippiece, Inc.は賑やかになってきました。今回も僕が全体のエンジニアリングを行うことになり、今日のリリースに向けて準備をしてきました。たくさんの人にお世話になり、たくさんの時間を費やしました。今日、こうしてリリースを行うことができることにまずは感謝の気持でいっぱいです。

今回のリリースは、とてもつらいものでした。trippieceというサービスは、前回のリリースで悉く揺らぎました。チーム全員が悩みました。Webサービスのあり方、コンセプト設計の良し悪し、広報のあり方、プロダクトとの向き合い方。全員が自分自身の立場で、それぞれ思うことがありました。僕はエンジニアとしてチームに携わりながら、このチームの行き先に不安を覚えました。紆余曲折を経て、今日に至りました。その過程を少しだけ、この場に記しておきたいと思います。

話は4ヶ月前に遡ります。まず、コンセプトがありました。特に、 @ishidaian はビジョンから入っていきました。「新しい体験をつくる」。ワクワクするような体験を、今までしたことがない体験を、サイト上でつくろう。コアコンセプトはそこでした。僕らはこれをサービスに落としこんでいかなければなりません。さあ、コンセプトからプロダクトに落としこもう。どんな世界観を描こう。どんなプロダクトデザインが必要だろう。話し合いに話し合いを重ねましたが、最初の1ヶ月はまったくプロダクトに落とし込めませんでした。誰もデザインができなかったのです。webデザインではなく、プロダクトのデザインをすることができませんでした。時間の制約があるため、僕らは3月末にプロトタイプと称してtrippieceの初期バージョンを作成しました。しかしこれは無理やりwebのワイヤーフレームに落とし込んだ、メッセージ性のこもっていないアプリケーションでした。結局僕らは作り終わってから、自分たちの不甲斐なさに気が付きました。ああ、全くデザインができていなかったのだと、このとき初めてわかったのです。

45日前、trippieceをプレリリースという形で出しました。最初の失敗を踏まえ、改めてサービスの設計を見直しました。webデザインもやり直しました。しかし、このリリースは失敗に終わりました。チーム全員がその認識をしています。最も影響が大きかったのは、スケジューリングの失敗でした。こんな機能があれば便利だ、この機能は他のサイトにもあるからもっと増やそう、これはいいサイトになるに決まっている。そんな、感じのスタートでした。結果は散々でした。チーム内でのアプリケーションの試用が始まったのは、ローンチの6時間前でした。バグが溢れ出してきました。しかしローンチの時間は決められており、サイトを公開せざるを得ませんでした。正直、自分が書いたアプリケーションが公開されることが、あんなに嫌だったことはありません。完成していないとわかっているものを、僕が書いたアプリケーションとして公開しなければならないのです。チームでのものづくりがまったく行われなかった挙句の果てでした。同時に、自分の実装力のなさを痛感させられたイベントでした。

そして今日、改めてαのリリースとなりました。前回から変わったことはデザイナーが入ってくれたことです。 @kshidayo くんが全てのデザインを行ってくれました。ワイヤーフレームの作成はあっという間に終わり、僕のところには整ったデザインを表現してくれるHTMLとCSSが届きました。ああ、なんて素晴らしいのだろうと思いました。webデザイナーがいるというのはこんなにも嬉しいことなのかと感嘆しました。そしてサイトの機能も大きく見直すことになりました。不要な機能は削りました。viewを構築し、動的なサイトとしてstaging環境で動き始めたのは10日前でした。サイトを見ていて、前回よりも好感が持てるようになりました。でも不思議なことになぜか使いづらいのです。微妙にテキストが入りきらない。微妙にボタンが押しにくい。どこを押せば意図したことができるのかわかりにくい。「機能としてのデザイン」ができていなかった。webサイトの利用者としての僕たちは良いサイトにたくさん触れているのに、制作者としての僕達はまだあまりにも未熟だったのです。利用者としての目線になって初めて気がつくことがたくさんありました。ではどうするか。インタラクションに関して、もう一度手を入れなおしました。まだ手を入れたいところは、いくつもあります。もっとユーザ目線で作れる部分がたくさんあります。今後のバージョンアップでやりたいことも見えてきました。インタラクションのデザイン。これが次の制作の課題です。

僕の不安は、チームに実装を十分にできる人が不足していることから来ています。それは単純にプログラマが欲しいということではなく、プロダクトに関する考え方の不一致でした。僕はまだまだ実装の経験が浅いプログラマですが、プログラマとして感じている気持ちをチームで共有することができず、非常に苦しい時間を過ごしました。きっとプログラマなら誰でも、書くコードに思い入れがあると思うのです。アプリケーション全体の構造を頭に入れながら、機能を分割して、限られた時間を配分しながら実装の進めていく。また設計に不十分な部分があると思えば、書籍などから徹底的に調べ上げ、理想的な設計をプログラムに反映していきます。そしてサイトに来てくれる人たちが少しでも楽しんでもらえるように、何回も何回もエディタとブラウザを往復し、他の一切の情報を遮断して集中し続けるのです。コンセプトを反映した、バグのない、かつ、最小限の機能をもった、クールなものをただ作りたいだけなのです。そういう気持ちがチームメンバーと共有されない時間が長く続きました。小さいチームは、ただの個人になってしまったのだとそのとき感じたのです。きっとコードに触れることができない僕以外のメンバーの方が切にそのことを感じているのではないかと思っています。

今日こうしてリリースできるのは、僕の尊敬するエンジニアの方々から感じた熱意と、ただただ制作に熱中させてくれた環境と、支えてくれる友人がいたからです。今日からまた、動いているアプリケーションを支える日々が始まります。今回のアプリケーションに込められた何かが、少しでも多くの人に伝わってくれたら、エンジニアとしてこれ以上嬉しいことはありません。

trippiece.com