いっても、最初はあまりコードの品質とか気にしないほうがいいです。必要な機能がゴロッと変ったりして、テスト要件が安定しない。そこで、まずは動き続けてもらうことに焦点を当てました。神様にお祈りしても落ちるものは落ちるので、頑張って安定したシステムを作ります。無償のトライアル期間を使って(!)TraceでバックエンドのメモリとCPUの消費を監視して、アップタイムを99%まで持って行きました。Traceの無償期間が終わってしまったので、今はGrafanaを使った自前の監視ツールを使っています(ごめんね!でもTraceはいいツールなんで広告収入が入ったらぜひ使わせてね!)。いうわけで、アップタイムは今の所99.9%です。静的コード解析とプロファイリング(バックエンド)パフォーマンスもめちゃくちゃ悪くてメモリーリークも大量に発生していました。静的コード解析のSonarQubeとInferやプロファイルツールのFlamegraphも合わせて使って、バックエンドの最終的なメモリー消費量は半分以下に減らしました。これがベストかといえばそうでもないと思うのですが、低スペックなサーバーでも大丈夫になりました。大事なのは可視化をして数値的なゴールを持つことです。動くこと、動き続けることが正義!プロファイリング(フロントエンド)フロントエンドに関してはビジネス優先順位の変更に伴って機能の優先順位も変更になりました。最初はオフラインファーストにしようと思ってたんですよ。オフラインでノートを作れる方が便利だろうと。Evernoteもオフラインで使っていたし。これにはアーキテクチャの根本的な見直しが必要でした。アーキテクチャを変えるのだから、フロントのパフォーマンスは目をつむってしまおう!という判断。割り切り大事!それが製品を出した後にオフラインの重要性は下がって、むしろパフォーマンスの優先順位が上がった。カメラをメインのCTAにするなら起動は早くないといけない。すればカメラを使ってノートをもっと作ってくれるという仮説。ほらね?100%の姿なんて簡単に変わるんですよ。いや、むしろ変わらないといけない。フィードバックとしてやはり多かったのが「立ち上げが遅い」でした。どれくらいが「早い」なの?というのでやはり数値的な指標が必要となります。それを測るのがNimbleDroidです。Graphのようにプロファイルをとって、立ち上げのどこに時間がかかっているのかを可視化してくれます。最初のバージョン(1.0.0)では起動に7.2秒かかっていたのですが、最新のバージョン(2.0.3)では1秒台になりました。Facebookと同じくらい。Twitterより優秀です。Store内のアプリの起動平均よりだいぶ短いはずです。これくらい起動時間を短くできればカメラをメインのCTAとして使える余地が出てくる。UXカメラをメインのCTAにした場合、実際に何クリックが必要なのかを数えてみることも重要です。手前味噌ですが、サービスジオラマはUXのデザインにとても役に立ちます。ユーザーがやりたいことを何タップでできるのかを数えるのはとてもいいですよ。Instagramはカメラを立ち上げて写真を撮るのに2タップ必要です。ところが、Snapchatは1タップしか必要ありません。Slackはユーザーを招待するのに2クリックですが、今ひとつパッとしないHipchatは前数えた時は4クリックでした。今はSlackと同じ2クリックですけどね。最初は何がメインのCTAになるのかよくわからないです。最初にリリースした時にカメラをメインのCTAにするなんて思ってませんでしたから!ですから、最初のバージョンはあまりデザインしすぎないほうがいいです。デザインすればするほどリリースが遅くなります。今回のバージョンからシェアできるようになりました。このシェアページもだいぶ素っ気ないですよね?リリースしておいてこんなことを言うのはなんですが。アプリは日本語なのにシェアページは英語しかないし。おかしいじゃないか!と思う人はここまで書いて伝えたいことがまだわかっていません。早く出すことが大事なんです。それがスタートアップでの正義。これは最初のバージョンだからまずはそのまま出しています。ここからヒートマップとか色々使って何が必要なのかをデータで理解していくわけです。次のリリースから徐々にデザインしていく予定です。リーンスタートアップやグロースハックとは結局何なのか?リーンスタートアップやグロースハックというのは自分で実践して思うことは「30%くらいの製品を早く出して、数値を管理しながら40、50と改善していく」ということなんだと思います。大事なのは30%でまず出してみる。MVPってなに?とよく言われますが。自分の考える機能の30%くらいのものと考えておけば感覚的にいいかなと。100%でだそうとするのは愚の骨頂です。100%を目指す人はまずスケジュール通りに行きません。外部コンサルをしていて多いのはこのパターンです。80%を目指していいのは大企業だけ。それでも失敗した時に80%を回収しないといけないのです。これって大変だと思いませんか?30%だったら失敗しても傷は小さい。数値で測定すれば学びもある。はてなブログProカタパルトスープレックス主筆。95のサービスデザインが最初のデザインプロジェクト。シンガポールとオランダで起業し、官公庁や大手企業のIoTやサービスデザインプロジェクトを手がける。海外で人気のデザインツール『サービスジオラマ』をクリエイティブ・コモンズライセンスで公開。オープンソースのデザインツールボックス『カタパルトスープレックスデザイン』を公開。読者になるリンク個人的なノートスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。