ICPC アジア予選 横浜大会で裏方をやっていました。参加者の皆様、コンテストは楽しんでいただけたでしょうか。コンテストシステム担当として、おおよそ以下の作業を行っていました。

  • コンテストマシンの選択
  • コンテストマシンイメージの作成
  • トライアルイメージの作成と配布
  • コンテストマシンへの計算機環境セットアップ
  • コンテスト中の選手環境の監視

私は2015年からこのあたりの作業を担当していて、2016年は飛ばして今回で4回目になります。私ともう一人で担当しています。

今年は Ubuntu 18.04 へのベースシステム更新を予定していたので早いうちから作業を進めていました。 前年度大会終了直後のテンションで作業した結果、1月には主な更新が済んでいたりとか。 とは言え、ポロポロ問題が出てきたりしたため直前まで色々作業はありました。

ベースシステム更新以外にやった環境変更は以下のとおりです。

  • Kotlin の導入。
  • 世界大会で導入されているエディタ (geany, kate, codeblocks) の導入。
  • 選手画面のスクリーンキャストを導入。

上にある通り、本番前の準備が大きな仕事になるのですが、本番も会場の演題脇に座ってお仕事しています。 選手マシンにアナウンスを流したり、選手マシンを監視したり、それからマシンサポートをしたりです。印刷の仕方がわからない、に答えたり、暴走したプロセスを管理者権限で止めてコンピュータを直したりします。ケーブルが抜けたのもすぐに検知して slack に飛んでくるようにしています。

システム班の目標は自分も過去に参加した大会をサポートすること、それから、コンピュータの環境をなるべく良くすることです。特に、選手が使っていてなるべく違和感を感じないものを提供したいと思っています。近年は自前環境で参加できるオンラインコンテストが多く、それらと比較するとカスタマイズがしにくいお仕着せシステムはどうしても違和感が出てしまうとは思いますが、範囲内でできることを提供しています。