時計を壊せ

駆け出してからそこそこ経ったWebプログラマーの雑記

ISUCON3でまたもや惨敗したはなし

ISUCON3への参加から日が経ってしまいましたが、来年の自分へのメッセージとして書きます。

だいたいの内容

坂パスタチームの仲間の面々が書いてくれているのでそちらをご参照下さい。
id:kfly8 http://kfly8.hatenablog.com/entry/2013/11/30/200331
id:masasuz http://masasuzu.hatenablog.jp/entry/2013/11/10/isucon

事前準備

生憎、仕事もプライベートも予定がキツキツになってしまって準備に割ける時間が直前でなくなってしまって全然動けなかった記憶があります。
もっとはやく準備してればよかったなーと思いました。足回り系とか、準備が主な仕事なので役割果たせてない。
id:kfly8 先生にげんこつされる夢を見ました。うそです。
でも、げんこつされても反論できないくらい、仕事できてなかったので来年がんばる。

ぼくがやったこと

  • 緊張する
  • gitとか整える(ここまで平常運転)
  • とりあえずconvertコマンドがボトルネックになってる事がわかったのでこいつを速くするぞ!まずは置き換えてみよう!というアウトな方針を立てる
  • convertコマンドを他のcpanモジュールで置換しようと延々と試行錯誤を行い時間を無駄に潰す
    • 画像のdiffが多くてコケる
  • 慌てる
  • ImageMagicのperl bindingなら大丈夫だろ
    • 画像のdiffが多くてコケる
  • 慌てる

以上です。アウトー!!

反省

事前準備に時間を割かなさすぎた

時間がない!って分かった時点で他の人に事前準備の役割を移譲するべきだったし、
そもそもぎりぎりになって準備をしようと考えている時点で甘かった。

方針決定に時間を割かなさすぎた

ほぼ思い付きの方針みたいな感じだったし、冷静に考えればまずはリソースを使いきれるようスケールアウトさせるのが先決だった。
チューニングの順序も、本来は「処理数を減らす」「処理を高速化する」の2通りあるはずだったが、
予選でmarkdownコマンドをHoedownに変更した事が功を奏した事などから短絡的に「処理を高速化する」方向に舵を切ってしまった。
方針変更を躊躇した原因もここにあり、なぜなら他のチューニング方針を考えていないので、
方針変更は新たな方針を立てる事から始めなければならず、方針変更のコストが高くなってしまっていた。
ましてや、普段触ってるアプリとは違う性質のアプリをチューニングする上で、
僕みたいな経験の浅い若者にベストな答えが一発で出せるわけがなく、
色々なチューニング方法を検討した上で、ダメだった場合のプランBも決めて、
一気に手を動かしたほうが確実に効率は良かった。

慌てた

慌てんな。

感想記事を書くのが遅すぎた

覚えている事が少なくて反省の記録として質が悪い。

感想

毎度、反省が多く、勉強になり素晴らしいイベントだなと思います。
今回も多くの学びがありました。
技術的な部分だけではなく、短期間で成果をあげるためのアンチパターンやら、
チームで仕事をする上でのアンチパターンみたいなものにもハマるので、
本当に、参加するだけで価値のあるイベントになっているとおもいます。
特に、新卒や学生の人こそ参加してみて、プロの仕事の品質を身を持って体感してみると良いと思います。
運営の方々、本当にありがとうございました。来年も楽しみにしております。