git challenge#12に参加してきた
先日10/26、mixiさん主催のgit challenge#12に参加してきました。
事前情報を全く持っていなかったのですが、案内のメールがきて何これ面白そう!って感じで応募しました。
git challengeとはなんぞや
チーム開発でgitを使ってると様々なトラブルが発生します。git challengeは、想定されるトラブルを問題にしてしまって、それを解いた数を競う競技会です。競技は二人一組で行います。
git challengeでは求めた形のコミットログをプッシュできているか、専用のジャッジサーバで判定します。競プロっぽい感じですね。
午前
11時スタートだったのでのんびり行ったら一番最後の到着でした。朝起きてgit challengeに出席することをgit challenge challengeというらしいです。
到着すると自分のペアの席に案内されます。
僕はteam-indiaでした。チーム名はalpha、bravo、charlieとフォネティックコードに対応する形です。wilcoのアルバム名にもありますね。
午前中は社員の方のLTと、競技のチュートリアルでした。
LTはmixi社内でのCI/CDの運用方法についてと、Tigコマンドについてです。git challengeということもあってgitやチーム開発に関するトピックでした。
競技のチュートリアルはこんな感じです(公開されてるならやっておけばよかった…)
競技本番
お昼をはさんで競技本番です。4時間でできるだけ多くの問題をときます。各問題には難易度が星の数で表されていて、解いた問題の星の数だけ点が入る仕組みです。
僕たちは難易度の低いものから解いていって、解けた人から次の問題に移る、という形を取りました。
序盤はなかなかコツを掴めず、ペアの人はどんどん問題を解いていく一方、解けない問題をペアに交代してもらうなど、申し訳ない感じでした。gitのログを確認するためにVScodeのGit Historyを使っていたのですが、途中3回ほど壊れてしまったため、そのたびにfixしていました。
後半は調子がのってきたのか、3点問題を2問解いたりしてなんとか巻き返しました。
気になる結果は…
なんと3位。
上のスクショはa-iの間のチームしか収まっていませんが、たしかteam-mikeまでいたので全13チームです。
team-foxtrotとteam-golfが難易度3までの問題を全て解いて1位タイ。そこから僕らteam-indiaが1問差で3位となりました。
個人的にはかなり健闘したと思ってます。4位のチームが14点なので3問分の得点差をつけての3位です。3位以上は表彰で名前を呼ばれますが、自慢とかしたいんで賞状か何かもらえると嬉しかったですね。
僕らがとった全22点のうち11点は僕が、もう11点はペアの子がとった得点です。お互いにいい感じに貢献できて非常にいいパートナーでした。
ごはん
お昼も夕食もついてます。
いい感じのお昼。
まさかのビュッフェ形式(mixi本社内)
感想
めっちゃ楽しかったです。競技プログラミングみたいに競技化してほしいです。問題作るのが大変そうなのと、問題のレパートリーが少なくて難しいんですかね。せっかくジャッジサーバーもあることですし、何か期待したいです。
競技のあとは難しい問題を社員さんが解説してくださいました。僕は普段もコマンドからgitを操作していますが、まだまだ沢山知らないコマンドがありますね。
gitの実装なんかの話もあり、ますます「gitすげー」となった一日でした。