こんにちは!ひさふるです。
以前、ハッカソンで優勝した経験をもとに、こんな記事を投稿しました。
この記事をベースに、更に様々な知見を言語化・図解しLT会などで発表したところそこそこご好評いただけたので、今回はその内容を記事にしてみようと思います!
今回のテーマ
AIコーディングが跳梁跋扈するこの世の中で、如何にしてハッカソンを勝ち抜くか?
今回は、AIコーディングが一般的になった世の中において、どうやってハッカソンに勝つか?をテーマに話をしていきます。
まず前提として、楽しみ方は人それぞれだと思います。あえて手でコーディングするのも1つの選択肢です。
ただ、勝つことにこだわるなら、昨今ではAIを使ったコーディングは避けて通れないと思っています。
今回は3章に分けて、AIを活用してハッカソンを勝ち抜く方法を解説します。
第一章:「ハッカソン」は「アイデアソン」になりつつある。勝てるアイデアの出し方とは?
ハッカソンのアイデアソン化
まず、AIの登場によりハッカソンはアイデアソンに近づいていることを認識するのが、ハッカソンで勝つための第一歩です。
"アイデアの良さ"を競うアイデアソンに対し、ハッカソンはアイデアに"実装"が伴います。
しかし、生成AIの登場により"実装"のハードルはどんどん下がり続けています。今や商用レベルのコードでも、コードの詳細を読まない手法が段々と浸透しつつあるほどです。
そのため、以前よりもずっとアイデア創出に使える時間が増えましたし、簡単なアイデアだと実装自体もすぐに終わってしまうため、与えられた時間を目一杯使って高度な実装をするためにもアイデア自体をしっかりと練っておくことがより重要になっています。
ハッカソンでも、"アイデアの創出"に時間を使うべき
ハッカソンのアイデアで重要な3+3+1の要素
さて、ではどうすれば"良いアイデア"たりうるのでしょうか?
ハッカソンのアイデアには、以下の3+3+1の要素が重要だと私は考えています。
まず、解決したい課題があること、すなわち誰かが困っていることは大前提となります。
それに対し、ハッカソンで出題されるテーマや、更に開発者であるあなた自身がなぜその課題に取り組むのか?という想いをどれだけ関連付けて語れるか、が重要となります。
このアプリの核となる3要素(課題、テーマ一致度、想い)がしっかりしていると、その後の説明・プレゼンの説得力が大きく違ってきます。
それに加えて、アイデアの良さに関わる3要素も重要です。
「誰かがお金を出しても良いと思えるほどの価値があるか?」という観点(マネタイズ)も重要ですが、ハッカソンは挑戦の場だと思うので、それよりも独自性(新規性)が大切です。
もし余裕があるなら、将来性も言えるようにしておくと完璧です。ハッカソンでは思い描くアプリの理想像を全て実装するのは難しいので、想いと関連付けて「本当はここまでやりたかった!」が言えるとベストです。
これらの要素を実現し、更に説得力を持たせるために必要なのが、残る1要素である高度な技術の使用です。
皆様が日々培ってきた技術・知識を発揮できるようなアイデアにすることで、アイデア自体の実現性がグッと高まります。
アイデアは、3+3+1の要素を網羅するように考えよう!
水平思考でロジカルに行うための方法論:コツは”ジャンプ“をしないこと
では、どうやって独自性の高いアイデアを出せば良いのでしょうか?
よく、独自性の高いアイデアを生むには水平思考をすると良いと言われています。
水平思考:固定観念や論理的思考(垂直思考)に縛られず、創造的に物事を考える思考法
とはいえ、急に「水平思考で考えて≒固定概念に囚われず創造的に考えてね」なんて言われても無理ですよね。
これは、いきなりめっちゃ良いアイデアまで思考をジャンプさせようとしているから、そう感じるのです。
ではどうすれば水平思考がラクになるかと言うと、水平方向に"軸"を正しく引いてあげることが大切です。
別の言い方をすれば、強制的に創造性が発生する考え方のフレームワークを導入すれば良いのです。
手法としては、以下のようなものがあります。
| 手法 | 説明 |
|---|---|
| 僕がよくやる方法 | 昨日やったことを順に思い出し、課題を探す 例)朝起きるのがつらかった ⇒ お昼ごはんのコストが高い ⇒ 3時頃眠くなって仕事に集中できなかった ⇒ … |
| SCAMPER法 | 以下の3つの観点でアイデアを考える Substitute(他で代用できないか?), Combine(何かと組み合わせられないか?), Adapt(他の良い仕組みを適用できないか?), Modify(一部を修正できないか?), Put to another use(他の用途に転用できないか?), Eliminate(削除できないか?), Reverse(逆にできないか?) |
| 形態分析法 | プロダクトを要素ごとに分解し、別の要素を組み合わせてみる方法 例)X (Twitter) の使いやすいUI + 社内チャットツールという目的、など |
僕がよくやる方法については、発見した課題は全て自分事であるため、課題や想いについて深く語りやすいためオススメです。
水平思考はフレームワークに頼ろう!
第二章:寄せ集めのチームで如何にして戦うか? 〜仕様駆動開発で共通の土台を作る〜
第一章で、近年のハッカソンにおけるアイデアの重要性と考え方についてご紹介しました。
第二章では、実際にそのアイデアを実装していく方法についてご紹介します。
寄せ集めのチームで如何にして戦うか?
先日出場したTokyo Flutter Hackathonには、新卒研修が同じチームだった4人で参加してきました。
気の知れた仲ではあるものの、ハッカソンに出場するとなると以下のような課題が発生します。
課題①:認識合わせのコストが高い
研修が同じチームだとしても、今は別々の案件に従事しているため、やっている内容は皆バラバラです。
「いつものあの方法で!」が通用しないため認識合わせのコストが高くなりますが、そこを合わせずに走り出すと後半にコンセプトごと破綻する可能性もありました。
課題②:使用する開発ツールが異なる
コーディング等に生成AIツールは全員多用しています。
一方で、使っているツールはバラバラなので、これも無理に揃えようとすると各々が最大限の実力を発揮できません。
ハッカソンでは、"寄せ集めのチーム"を如何にしてまとめるかが重要
Tokyo Flutter Hackathonで実際に取った戦略
上記の問題を解決するために、我々が実際に取った戦略は序盤に仕様駆動開発で一気に土台を作ることでした。
仕様駆動開発は、最初に仕様を明確に定義し、それをAIに実装させるという開発手法です。
仕様を最初に決めること自体はまあ普通と言えば普通なんですが、それをAIが参照しやすいようにまとめ、配置するというAI中心の考え方にシフトしたのが特徴でしょうか。
最初に仕様駆動開発をする意義
最初に仕様駆動開発をすると、2つの良いことがあります。
1つ目はプロダクトの方向性やビジョンが一致することです。
皆で同じドキュメントに相対して仕様をまとめていくことで、最初は曖昧だったイメージが揃い、開発するもののコンセプトが非常に堅牢になっていきます。
2つ目は、各メンバーがそれぞれ並行して開発を進めやすくなることです。
最初に土台だけ完成していれば、そこに機能を1つ足すのは比較的ラクで、コンフリクトもしにくいです。
そのため、各々が好きなツールを使って別々に開発を進めても、スピード感を落とさず最後まで走り切ることができるようになるのです。
ハッカソンでは最初の土台作りに仕様駆動開発がオススメ!
第三章:プレゼンはビジネスのつもりで。”想い”を”価値”に繋げるプレゼンテーション戦略
さて、最後にプレゼンの話です。
ハッカソンは実際のビジネスの縮図?
ハッカソンは、企画の立ち上げからプロトタイプ開発を行うという観点で、リーンスタートアップ等に近い体験になり、エンジニアの皆様が普段行っているビジネスにおけるプロダクト開発の縮図とも言えます。
そのため、プロダクト・マーケット・フィットと呼ばれる、プロダクトが市場のニーズに適合しているかという観点は非常に重要です。
ですが、ハッカソンではもう一点、ファウンダー・マーケット・フィットと呼ばれる、開発者自身の経験・知識・想いが、取り組む課題や市場とどれだけ合っているかという、「どうして(開発者本人が)そのプロダクトを作る必要があったのか?」という観点も重要になります。
プレゼンでファウンダー・マーケット・フィットを語ろう
(ある程度テーマが出題されることも多いとはいえ)基本的に作るものを自由に決められるハッカソンだからこそ、なぜあえてそのプロダクトを作ろうと思ったのかを明確に伝えられると、プレゼン全体に一貫性が生まれ、記憶に残るプレゼンになります。
プレゼンはNABCと呼ばれる、ニーズやアプローチから入りそのプロダクトの利点や競合を語る流れを取ると効果的です。
この、NeedとApproachのタイミングで、ファウンダー・マーケット・フィット(FMF)を関連付けて語ることで一番見て欲しいBenefitsへ期待感を持たせ、スムーズな導入が可能となります。
プレゼンではファウンダー・マーケット・フィットを語ろう!
おわりに
今回は、以前も説明したハッカソンで勝つためのノウハウを、より具体的かつ体系的にまとめてみました。
こうして見ると、ハッカソンは単なる技術的な実装だけでなく、アイデア創出からスピーディーな実装、最後にはプロダクトの魅力を伝えるプレゼンまで、IT系に従事するための能力を総合的に試される場であるということを再認識できますね。
AIが登場したことによるハッカソンの体験の変化には色々と思うことがあるものの、この変化にも柔軟に対応し、今後も楽しくハッカソンに参加していきたいと思っております。





