GWに行われたProgateハッカソンにメンターとして参加していました。せっかくなので参加記をつらつらと書いていきます。
なお、私はハッカソン参加経験はほぼないです(ハッカソンという形式そのものがnot for meであるため、そもそもあんまり参加しようという気にならない)。Progate Pathコミュニティに顔を出す機会が増えていたこと、ちょうどGWに関東にいるので最終日のオフライン参加ができるということで参加することに。
エントリー開催決定時点ではメンターではなくコンテスタントとして参加するつもりでした。しかし、前述の通りハッカソンという形式があまり好きではないのと、申込みが殺到していたことで自分がコンテスタントの枠を1つ潰すのが少し申し訳ないのもあって、学生メンターの枠に移動しました。あと単にメンターで参加できる機会ってほとんどないので、経験として面白そうと思ったのもあります。
キックオフ〜開発開始
キックオフから開発開始日するまでの期間は個人的に結構忙しい期間でした。GW期間に提出する大学の課題やサークルの新歓活動の準備など。
この期間のメンターとしての業務は上がってきた質問に回答する他、軽いヒアリングをすることでした。内容としては何を作るかが決まっているか、環境構築はできているか(明日から開発を始められるか)、その他困っていることはないかなどを聞いていました。ただ、このあたりは力量不足を痛感したところで、悩みって聞いても出てこないんですよね(俺も聞かれたら「うーん... 大丈夫そうですね〜」って答えると思う)。なので、雑談を交えながらいい感じに引っ張り出そうと思ってたのですがうまく引き出せず。どうするのが良いのかあまりつかめないまま、ヒアリング自体は完了しました。救いとしてはどのチームも円滑にコミュニケーションが取れていて、方針が定まっていたことですね。
ちなみに、(ご存じの方はご存知でしょうが)僕はフロントはNextjsでコンポーネントガチャするぐらいしか経験がないのでフロントの質問が答えられないし、バックエンドは割と知識のあるメンター陣が爆速で返していたので出る幕なし。アルゴ力で色々アドバイスできそうなチームは特に困ったこともなさそうな感じで、俺いる?とはなりました。まぁ、うん。
主な反省点としてはやはりGitで、もうちょっとしっかりヒアリングとかしてハンズオンとかもできたらよかったな〜と思います。後に、Git周りで悲鳴がたくさん上がることに...w
移動
5/3に関東へ向かいました。関空→LCC→成田→横浜で10時間ぐらい移動してたらしいです。翌朝に肩が悲鳴を上げてました。
開発期間 - day1
どのチームも本格開発開始で、VCに集まって開発をしているチームが多かったです。オンライン日ではありましたが一部チームは場所を決めてオフで集まって開発を進めていたりもしていたみたいです。
僕はというと、昼ご飯を横浜で食べてからGUで翌日の服を買い(は?)、そのあとはホテルに戻って一人で適当にVCに入って質問対応をしたり裏ハッカソンを進めたり、CTFを解いたりしてました。自由。
開発期間 - Day2
同じホテルに泊まっていた友人の帰宅の音で起床。そこから前日夜のABC352を一通り解いた。風呂やらなんやらを済ませたら10時で普通に開始に間に合うか怪しくなり、焦る。
会場着後は特にやることはないので、重みつき5目並べとそのげきよわAIを作って遊べるようにしたり、質問に答えたり、人のPCをのぞいたり(最悪)していた。あと課題もしていた。限界大学生なので...
成果発表(Day2続き)
さて、ハッカソンといえば成果発表です。
今回のProgateハッカソンは技術を高めることを重視しており、そのために
発表やアイデアに対する加点は行わない
スライドは禁止で、資料はデモと一定のフォーマットが定まったマークダウンのみ
といったレギュレーションで行われていました。ただ、どのチームのアイデア・発表がとても良く、これらを切り離して点数を決めるのがとても難しかった...というか、大いに影響を受けていたと思います。評価項目としては
マークダウン資料の完成度
技術の無駄遣い
技術力
完成度
の4項目でした。2については本人たちが言語やフレームワークの採用をしているか(=チャレンジ精神を評価したかった)、はたまたそれらを用いずゴリゴリとプログラムを書いたりしている事を中心に加点をしていました。3については2に近しいものの、可用性が高いかどうかや実装の面(アルゴリズムなど)で評価をしていました。1, 4は字面の通りに捉え採点していました。
正直「この採点方法で良いのかな...」と、かなり悩みながら点をつけていました。だって全部めちゃくちゃ良いんだもん。全部満点で良くないですか(よくないですが...)
ちなみに、個人的に好きだったのはピザタワーのオマージュを作成していたチーム。アクションゲーの移動は擬似的な動作で済ませたくなるところをしっかり物理計算してシミュレートしていたり、盤面もアルゴリズムで(詳しいコードは見てないけど、多分DFS?)都度違う盤面が生成されるようになっていたのがめちゃくちゃ良いな〜〜〜と思ってニッコニコで聞いていました。
帰宅
全チームの発表を終えた時点で17時、僕は飛行機があるのでそそくさと移動を開始。なんとか飛行機には間に合い、そのまま帰宅できました。
終わりに
ここまで読んでくれてありがとうございました。このハッカソンを通じて、僕自身が学ぶべきことも多く、また広く知見を得られたのが大きな収穫でした。また、参加した方にとってもそのような場になっていてくれたら良いなぁと思います。