
初めてハッカソン(2日間)に参加した話
はじめに
今の自分のレベルを知りたい、集中的に共同開発に取り組みたいということで、キャリアセレクトのmanifesというハッカソンに参加しました。その詳細や感想を述べていきます。
イベント内容
manifesとは、キャリアセレクトのコミュニティであるSTECHが開催するハッカソンで、2日間という短さで行われました。マニア(mania, maniac)の様子から取っているそうです。
テーマはハイクオリティに遊ぶということで、文字通りレベルが高くユニークな開発物が多かったです。
表彰については、最優秀賞と特別賞(STECH賞)に分けられ、最優秀賞者には1人ずつにシャトーブリアンが送られました!
ちなみに、STECH賞は当時では秘密にされていました。
参加者は1チーム3人の4チームであり、12人で行われました。
成果物
タイトル : スペースピクチャ
カメラを起動し、そこにお絵かきができるwebアプリです。
使用時技術
Python
opencv:動画・画像処理
streamlit:Webアプリケーション
mediapipe:画像検知
Pytorch:画像認証
機能
お絵描き機能
色変更/線の太さ/背景切り替え/戻る/全削除
採点機能
お題変更機能(お題はランダムに20種)
開発背景
短期間のため、PythonのみでWebサービスが作れるstremlitを使用
ハイクオリティに仕上げるため、指の画像検知をするMediapipe(GoogleのAIライブラリ)を使用
楽しさを見出すため、お題の絵を描いてAIが判定してくれるお絵描きアプリを選定
https://share.streamlit.io/afkmin/spacepicture/main/app.py

風景
アイデア出し
アイデアは特に考えていなかったので、チームメンバーの考えていたアイデアから試行錯誤しました。
期間が短いため、アイデアソンの内で1から考える時間がなかったです。とはいえ、事前に考えておかないとハッカソンの意味も無くなってくるなと少し反省しました。
開発
開発時間を考慮してフロント、バック共にPythonで書くことに決めたため、Pythonに疎い自分は主にフロント(デザイン)を担当しました。
自分がCSS考えている間にも他のメンバーはどんどん書いてpushしており、実力の差を感じました。
プレゼン
開発に時間がかかり、プレゼン用の資料を作る時間は30分程度しかありませんでした。
一方で他のチームはしっかり凝られていて、出来栄えは全チームで一番しょぼかった気がします、、
プレゼンに関しても、自分は人前で話すことが苦手なこと(よく噛む)、練習時間が取れなかったことも相まって全然上手にできなかったと思います。
結果
どのチームも開発物、プレゼン共にレベルが高く、入賞は難しいと思いましたがSTECH賞に選ばれました!
評価対象としては、ハイクオリティに遊ぶというテーマに寄り添い、様々な機械学習用フレームワークが用いられていたことが印象良かったそうです。
最優秀賞に及ばなかった理由としては、チームの役割分担が指摘され、フロントエンド側やバックエンド側など役割を決めることが大切だとわかりました。
どんな賞品が送られてくるか楽しみです!
感想
自分が経験したかった、今の自分のレベル感を知ること、チームで長時間集中的に開発に取り組むことができて大満足でした。
レベル感に関しては、STECH賞が取れたのは他のメンバーもおかげであると言っても過言ではないため、自分の実力はまだまだだなをと感じました。
また、期間が2日間だけであったため、より集中的に取り組むことができたものの、アイデア出しや実装内容など思ったことがスムーズにできなかったです。
これからの課題としては
競プロなどを行ってコーディング速度を上げる
LT会などに参加し、プレゼン力(コミュニケーション能力)を上げる
ことかなと考えました。
終わりに
最後までご覧いただきありがとうございました!
ハッカソンに参加するか悩んでいる、といった方に少しでも参考になればと思います。