ぱすたけ日記

日記っぽいのを書きます。

ISUCON10予選にヌルポインターマリアユニバースとして出場して決勝進出しました

個人としては4年ぶりの決勝進出。

チーム学生自治が解散してからは出たり出なかったりしていたけど、今年ははてな社内で声を掛けてもらって新チーム「ヌルポインターマリアユニバース」を id:wtatsuru id:polamjag と結成して、なんとか決勝進出しました。

最終スコアは2335点で20位だったけど、誰もFailしてなかったら26位だったので、結構ギリだったとも言えそう。

チームとして何をやったかは既にチームメンバーが書いてくれているので、そっちに任せて個人的な振り返りを書いておきます。

良かったこと

  • 開始時間が12時に変わるのが決まったときに「14時に昼ごはん食べながら色々話しましょう」みたいなことを決めていて、まぁそれまでは問題読んだり各位当たりつけようという雰囲気だったので、序盤にベンチマークが動かなくてもさほど困らなかった
  • 問題を全員で読んで、ログと合わせて眺めて、それぞれをissueに切り出せていたのは良かった
    • このときに優先度評価もざっくりやったり思いついた方針をひとまず書いたりしていた
  • 15分スプリントやったのは良かった
    • 1つのことに異常に執着して向き合ってしまうなどは避けられていた
  • polamくんがシュッとN+1倒したり、tatsuruさんがMySQL分けたりしてくれて完全にありがたかった
  • 最後の追い込みでもう200点上げたいというときに、MySQLの設定漏れをpolamくんが思い出してくれて、それで無事200点上がったのはありがたかった。結構あれで決勝行けたと思っている
  • 今回はここを倒さないととにかく前に進めないみたいな巨大な壁があるというよりはそれぞれを1つずつ倒していくと少しずつスコアが上がっていくという感じだったので、そういう意味ではランチ前に倒す場所をザーッと列挙出来たのは良かったなという感じがする
    • 巨大な壁を最後までどうにもできなくて全然スコア動かなかったみたいな辛い思い出がある

改善したい

  • とにかく自分がGoに慣れて無さ過ぎて、動くコードをなかなか書き上げられなかった
    • lowPriceのキャッシュもなんか動かなかったし、大きさのRangeを置き換えるとPOST /api/chairsが死ぬなどしていてmergeしなかった
      • generated column使えば良かったのなるほどね感がある…
    • Goにはもう少しちゃんと慣れてコード書けたいので、ちょっと本戦までにもう少し慣れようと思う
      • nodejsだとハマらなかったなという気もするので、そこの選択は難しい…
  • 椅子を扉に通すの「なんかありそうだね」と言いつつ、その先に進めなかった
    • 結果的には決勝出れたので固執してミスるよりさっさと放置して良かったのだけど、一番小さい矩形だけに出来るのは気付きたかった

その他

  • 開始時間に合わせて活動してたら2時間余裕が出来たので、やよい軒で朝ごはんを食べてそのままローソンでビール買って飲んでいた
  • その間にUberEatsをスケジュール注文した
  • 全部で延べ9時間ほどあるのは、早起きしてるのもあり流石に集中力を維持するのが難しかった
    • 運営の皆さんはもっとお疲れさまです……
  • 終わった後にMeetsで身近なチームの人達と集まってワイワイ振り返るのは楽しかった。この夏あんまりワイワイすることなかったので、オンラインでもこういうことが出来たのは最高でした
  • KMCからも2チームが出ていてめでたい!

チームメンバーがとにかく素晴らしくて結構おまかせしていて、ラバーダックくらいしか出来なかったんじゃないか感はあるけど、本戦せっかく参加できるので、本戦も優勝目指して頑張るぞ!!!!!!!!!!!