BLOG

ブログ

ハッカソンに参加してみた

今回は、初めてハッカソンに参加した私の体験談と、実際に開発したプロジェクトを紹介したいと思います。

「ハッカソンって気になるけど、なんだか難しそう…」「自分の技術力でついていけるのか」そんなふうに思っている人もいるかもしれません。実は、私も最初はかなり不安でした。

でも、実際に参加してみると、技術力だけでなく、アイデアやチームワークがとても大事なことを実感しました。 そして何より、限られた時間の中でチームと一緒に試行錯誤しながらモノづくりをする楽しさは、想像以上のものがありました!

この記事を通して、ハッカソンの魅力が少しでも伝わり、「自分も参加してみようかな?」と思ってもらえたら嬉しいです!


ハッカソンとは

ハッカソン(Hackathon)は、「ハック(Hack)」+「マラソン(Marathon)」 を組み合わせた言葉で、短期間で集中的に開発を行うイベント です。

参加者はITエンジニアや学生やデザイナーなど様々で、与えられたテーマに沿って1日や数日、長いものだと数週間で開発を行っていきます。


参加のきっかけ

もともと自分自身ハッカソンには参加してみたいとは思っていたんですが、近くで開催されることがなかったり、自分の技術力に不安があり、まだ参加できないかも...と思ってなかなか参加できずにいました。

そんな中、dottの浅井さんにハッカソンが北海道の美唄市というところで開催されるので来ないかとお声がけいただき、これはチャンスだと思い、思い切って参加を決めました。


美唄ハッカソン

宮城県のイトナブという会社が主催しているハッカソンで、今回の美唄市で行われた「美唄ハッカソン」は第一回目とのことでした。(宮城県石巻市では毎年、石巻ハッカソンが開催されているようです)


今回の開発テーマ

美唄市にあるゴルフ場を会場として、「ゴルフ場をハックせよ」というテーマで、ゴルフ場に関するものやアイデアをもとに開発が進められました。

参加者は40名ほどで、五人で1グループを作って一泊二日でそれぞれ開発を行いました。

自分のグループには経験のあるITエンジニアの方や、IT業界に転身したばかりのエンジニアの方、自分を含めハッカソンに初めて参加する学生など多様な人が集まりました。


自分たちのプロジェクト

私たちのチームでは、Webアプリ「残されバーディー」を開発しました。

今回のハッカソンのテーマは「ゴルフ場に関連するもの」。ただ、私自身、ゴルフに対して「休日に父親が行くもの」というイメージが強く、家族とはあまり縁がないスポーツに感じていました。そこで、「ゴルフに行く人だけでなく、家族全員でゴルフ場を楽しめるものを作りたい」という発想から、このアプリのアイデアが生まれました。

「残されバーディー」とは?

さらに、ARマーカーを読み取ると、父親の写真とゴルフに関する簡単な説明が表示される仕組みになっており、遊びながらゴルフのルールや用語を楽しく学べるようになっています。例えば、「バンカーって何?」「パターってどういう意味?」といった基本的なことから、プロのテクニックに関する豆知識まで、家族全員が気軽にゴルフに触れられる設計にしました。

アプリ名の「残されバーディー」は、ChatGPTに「ゴルフに関するワード」と「ゴルフに行ってしまった父親を嘆く家族の思い」をキャッチーにまとめてほしいと指示して生成しました。ほかにも「パパだけグリーン」といった名前の候補もありました。(バーディーはゴルフ用語)


アプリ概要

アプリ名残されバーディー
ターゲットゴルフをしない家族(特に子供)
目的ゴルフ場を家族全員で楽しめるようにする
強みARマーカーを使って、ゴルフのルールを楽しく学べる
使用した技術HTML, css ,Javascript, A-Frame, AR.js, Azure Cognitive Services(TTS API)

各ページ

ホーム画面

マップのアイコンとカメラのアイコンを押すと各ページに飛べます

マップ画面

ARカメラ画面

この下のARマーカーを読み込むと上の画像とテキストが表示されます。
表示された画像をタップするとテキストの自動読み上げが始まります。

この黒い四角い部分をARマーカーとして認識するので、枠の中心には簡単な文字なら自由に配置できます。
今回は美唄市で使われているマークを使用しました。


使用技術の紹介

A-Frame

  • Webブラウザ上でVR(仮想現実)コンテンツを作成できるフレームワーク。
  • HTMLのような簡単なコードで3Dオブジェクトやインタラクションを作れる。
  • Three.jsをベースにしており、VRゴーグルやPC・スマホでも動作可能。

AR.js

  • WebブラウザでAR(拡張現実)を実現するJavaScriptライブラリ。
  • A-FrameやThree.jsと組み合わせて、マーカーや画像を認識して3Dオブジェクトを表示できる。
  • スマホのカメラでARを楽しめるため、アプリ不要で手軽に試せるのが特徴。

Azure Cognitive Services (TTS API)

  • Microsoft Azureが提供する「テキスト読み上げ」サービス。
  • TTS(Text-to-Speech)は、テキストを自然な音声で発話させる技術。
  • 音声アシスタントやナレーション付きのアプリ開発に活用できる。

ハッカソンスケジュール

1日目10:00~チームビルド
11:00~9:00自由開発
2日目10:00開発再開
12:00開発終了
14:00~15:00全体発表
15:00~16:00審査員講評・表彰

👇美唄ハッカソンの詳しい情報はこちらから確認できます👇

https://techplay.jp/event/960003


開発で大変だったこと

今回の開発では、初期の要件定義が甘かったことと、チーム全員がAR技術に未経験だったことが大きな課題となりました。どの技術が実際に動くのかを調査するところから始める必要があり、そこに思った以上に時間を取られてしまいました。

また、プロジェクトの規模設定も難しく、最初から明確なゴールを決めるのに苦労しました。

  • どこまでの規模で作るのか
  • 自分たちの技術でどこまで実現できるのか

このバランスを取るのが本当に難しかったです。「この規模なら作れそうだけど、それだと5人で分担する必要がなくなる…」「なら機能を増やそう!でも時間内に間に合うのか?」と試行錯誤を繰り返しました。最終的には、必要な機能を中途半端に決めてしまったことで、「そもそもターゲットは誰?何を解決するためのプロダクトなのか?」という根本的な疑問が途中で出てきてしまい、方向性があやふやになりかけました。何度もチームで話し合いながら軌道修正し、なんとか開発を進めることができました。

さらに、作業の分担も大きな課題でした。
初対面のメンバー同士で円滑なコミュニケーションを取るのが最初は難しく、役割分担をするのにも時間がかかりました。そこで、チームの関係を深めるために、ゴルフ場で実施されていたスノーアクティビティに参加。これが思った以上に効果的で、自然と会話が増え、その後の開発でもスムーズに意見交換ができるようになりました。

時間的に間に合わない部分は、会場に泊まり込み、徹夜で作業を進めることでなんとか完成させることができました。


ハッカソンで得た学び

このハッカソンで得られた学びは多く、その中でも特に大きかったのは次の3つです。

① コミュニケーションとチームワークの重要性

短期間で開発を進めるには、「少しでも気になったことはすぐに共有し、話し合う」ことがとても大切だと実感しました。曖昧なまま進めてしまうと、途中で方向性がブレたり、開発が滞ったりしてしまうことを痛感しました。

また、お互いの得意・不得意を早めに共有することも重要でした。最初の顔合わせの段階で、得意なことを明確にし、それに基づいて作業を分担することで、もっとスムーズに進められたはずです。

② 限られた時間内での開発の進め方

ハッカソンは、時間が限られているからこそ、「この時間までにここまで完成させる」という見通しを立てる力が求められます。今回、途中でスコープ(開発範囲)の調整が必要になったり、時間的な制約の中で取捨選択を迫られたりしました。この経験を通して、開発の優先順位を考える力が少し鍛えられたと思います。

③ AIを活用すれば、未経験の技術にも挑戦できる

今回、チーム全員がAR技術に未経験だったにもかかわらず、ChatGPTやAIを駆使することで実装までたどり着くことができました。「技術力が足りない=挑戦できない」ではなく、AIを活用すれば未経験でも突破口を見つけられるというのは、大きな学びでした。


まとめ:ハッカソンの魅力とお勧めしたい理由

正直、私は開発の経験がまだ浅く、参加する前はとても不安でした。しかし、実際にやってみると、足りない知識はChatGPTやAIを駆使することで補いながら開発を進めることができたのが大きな発見でした。

特に、チーム全員が未経験だったAR技術も、AIを活用することでなんとか実装にこぎつけることができました。これは個人的に一番うれしかったポイントです。

もし、「自分の技術力が不安だから…」という理由でハッカソン参加を悩んでいる人がいたら、ぜひ軽い気持ちで参加してみてほしいです。今の時代、技術力も大事ですが、それ以上に発想力やアイデアを形にする力が重要になっていると感じました。足りない部分はAIを活用し、アイデアは自分たちで生み出す。このスタイルなら、初心者でも戦っていけるはずです。

そして、ハッカソンならではの「短期間でチーム開発をして、完成まで持っていく達成感」は、他ではなかなか味わえない貴重な経験でした。さらに、一緒に試行錯誤して頑張った仲間とのつながりは、何よりも価値のあるものだと感じています。

技術力に自信がなくても、興味があるならぜひ一歩踏み出してみてください!