スマフォブラウザゲームのパフォーマンスチューニング手遅れパターン
最近、こういう事例が増えてます
ネイティブゲームアプリもグリグリアニメーションする昨今
🐤俺らもブラウザゲームの限界を目指そうぜ!
🐤盛るぜー盛るぜーー超盛るぜーー
数ヶ月後…
🐤来月リリースだけどカクカクします助けてーー
🐲きさまら何度やったらわかるんだ…そこに正座しろ…(ゴゴゴゴゴ)
#こうですか?
— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19
🐲なぜ作ってる途中で実機で動作確認をしなかったんですか?
🐤え、あの、CreateJS なら大丈夫かとおもって… 確認してませんでした
🐲(イラッイラッ
#こうですか
— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19
🐲(はぁ…)とりあえず実機動作とコードを見たいので開発サーバ名やログインする為の情報ください
…2日後…
🐤…これで💦
🐲…動かない…あとminify解除してない状態なのはなぜ
🐲…パフォチューするためにコード見たいって言いましたよね?
🐤💦すみませんx3💦
#こうですか
— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19
まとめ
🐤来月リリースなので久しぶりに実機で動作を確認したところ、DOMとCSSとCanvasまぜまぜにしたゲームがカクカクします。助けて💦
🐲なるほど…コチラが処方箋になります https://t.co/1HPTKoXgKy Google.imageSearch
— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19
ソフトウェアは、確認を後回しにすると手痛い倍返しを食らう
- 昔話になりますが、SOLID CODE 高品質なコードを生み出す実践的開発手法 にも「機能の実装を優先し、報告されたバグは実装が終わるまであえて放置した」「実装後にバグを一気に潰そうとしたら大変な事になった(破綻した)」話が載っています
負の連鎖を止めるために、その場で「これは救えません」「もう手遅れです」と死亡宣告を出すケースもある。救えない命もある
- ハッキリと「小手先では治らない」「正攻法で書き直すとしても、設定されたスケジュールには間に合わない」と告げることで、他の手段(サポート端末を限定した状態でリリースする、リリースを延期する等)を選択してもらうためにも、あえてそうすべき場合がある
- ダメなのは、「まだやれる…もうちょっとやれる…」とズルズルと時間と金を浪費して結局だめで、退職者を生み出すきっかけになるような過労型の対処療法
- 相談を受けコードを見た時に、「あー、これは…ダメそう…」と感じたら、やはり大抵ダメになるはずだ。奇跡はない。1ヶ月を無駄にするよりも、自分のプロとしての直感を信じろ。
- 求められているのは、「時間をかけて何とかする技術力」よりも「プロの視点としてどうなのか」の判断だ。判断が先だ。
- 立て直しが必要なのに外壁補強でその場を乗り切っても、軽めの拡張や改修もできず、イベントが打てずに結局死ぬ。あなたなら、わかっているはずだ
ブラックジャックの名言は示唆に富んでいる