「ハッカソン」という言葉をご存知でしょうか?IT業界では ”アタリマエ” のように使われているのですが、業界の外の人はもしかしたら聞いたことがないかもしれません。
また、ITエンジニアの人でも、実際に参加した人というのは以外にも少ないと思います。
そこで、この記事ではハッカソンとはどういうものなのかという初歩的な説明から、参加のメリットまでを徹底解説していきたいと思います。
僕は一番最初のハッカソンに出るときは友達と一緒に出たのですが、その友達がいなかったらハッカソンとは無縁の人生だったかもしれません。
この記事が、その友達のようにあなたがハッカソンに出場する後押しになれば幸いです。
この記事は、ハッカソン初心者の僕が、ハッカソン初心者向けの人に向けて書いています。開発強者の人からすると「何を当たり前のことを言っているんだ…」という内容ですのでご注意ください汗
目次 (クリックでジャンプ)
ハッカソンとはサービス開発会のこと
まず、ハッカソンとは一体何か?ということですが…
ハッカソン(Hackathon)とは、ハック(Hack)とマラソン(Marathon) を組み合わせた、いわゆる造語です。
ハッカソンでは、様々な技能を持った人が与えられたテーマや自分たちのアイデアをもとに行くつかのチームに分かれ、サービスやシステム、それにアプリケーションなどをを0から開発します。
ハックとは、日本ではハッカーのイメージが強いですが、元々はシステムやソフトの開発・改造をするという意味なのでかなりポジティブな意味を持つ言葉なんです。
ちなみに期間は1日 ~ 1週間程度。この限られた期間の中で、どれだけ良いものができるかを競い合います。
また、サービス開発だけでなく、技術に関する情報を交換したり、ゲームのデモプレイをしたりする会もハッカソンと呼ぶこともあります。
ざっくりとした印象としては、”技術者の集まり” くらいに思っておけばいいかもしれません。
どんな人が参加するの?
ハッカソンに参加する人は、様々です。
例としては、エンジニアはもちろん、デザイナー、プランナー、マーケター、モデラー、シナリオライター、声優さんなど役割は多岐に渡ります。
だから、参加する人の全員がコードを書かなければいけないというわけではありません。特に、ゲームのハッカソンともなれば、デザイナーや3Dモデラーの取合いになることもあります。
エンジニア以外の人は、参加するハッカソンにどういう人が求められているのかをしっかり確認して行くと非常に良い経験ができるでしょう。
また、技術的な面で「どのくらいの人が参加しているか」ということについてですが、当然のようにレベルの高い人が多いです。会社のシステム開発をしていたり、ゲーム開発をしていたりする人が多い印象です。
ですが、もちろん全員がそういうわけではありません。ハッカソンのレベルによっても違うのでそこらへんはしっかり見極めて行くと良いでしょう。
どうしても心配な人は友人と一緒に行くか、あとで紹介するようにプログラミングスクールなどで腕を磨いてから行くと良いでしょう。
最初にも書いたとおり、僕も最初のハッカソンはほとんど何もできない状態だったので、もう完全に「メシスタント」状態でした。
そうなるのを避けたい初心者の人は、「初学者歓迎!」の会だったり、「このソフトを触ってみましょう!」みたいな会を探して参加してみるといいと思います。
ハッカソンの流れ
簡単にですが、ハッカソンの流れを説明して行きたいと思います。2日間に渡って開催された実際のハッカソンをもとにしました。
Day 1st
オープニング(9:00 ~ 10:00)
ハッカソンの開催セレモニーです。大会の開催概要やスポンサーの紹介、それに諸注意などの通達が行われます。
チームビルディング(10:00 ~ 12:00)
まず、アイデアのある人が各自の作りたいものやアイデアを発表します。そして、そのアイデアに賛同した人が集まってチームを作ります。
初心者の人は、この時に自分に何ができて、何ができないかということをしっかりと提示しておくと良いチームに入ることができます。
アイデアソン開始(12:00 ~ 17:00)
ハッカソンの種類にもよりますが、まずはアイデア出しをすることが多いです。ある程度アイデアを出し、どのように開発を進めていくかということについて意見を出し合います。
このアイデアだしを、アイデアとマラソンを掛け合わせてアイデアソンと呼ばれることがあります。
アイデアや開発フローが固まると、いよいよ開発が始まります。このアイデアソンの時間には特に時間制限などがないので、どこにどの程度時間を使うかということもチーム次第ということになります。
中間発表(17:00 ~ 18:00)
中間発表をするときは、
- やろうとしていること
- 使うデバイスや技術など
などを発表します。中間発表はしないことも多いですが、どのチームがどんなことをしようとしているかのイメージをつかんでおくと面白いです。
また、同じような技術を使ってる人がいると、開発が進まないときにはアドアバイスを求めにいけるのでぜひみておきましょう。
開発再開(18:00 ~ )
ここからはひたすら開発を進めます。進み具合によってはきっちり眠れるのですが、進捗が生まれていないと徹夜で開発を進める羽目になることも…
ハッカソンの主催者から差し入れなどがあったりするのでやる気はめちゃくちゃ上がります。徹夜で開発なんて、いかにもハッカソンっぽい?
Day 2nd
最終発表(17:00 ~ )
2日目にすることといえば、主に成果物の発表です。
どのチームもほとんど何か形になるものを上げてくるので本当にびっくりです。周りに技術力の高さに圧倒されます。
表彰式 & 懇親会
順位をつけるタイプのハッカソンでは、最終発表の後に表彰式が行われます。色々な賞があったりするので、結構みんなハッピーになれます。
懇親会では、いろいろな人とお話しすることができます。他のチームの人やハッカソンの主催者の方ともお話できるので積極的に絡みにいきましょう。
大人たちは、「会社で一緒にやりましょう」みたいな話をしていたりするのでビビります。
前日に徹夜の人は、アルコールがかなりくるので注意しましょう。
ハッカソンに参加するメリットとは?
では、ハッカソンに参加する具体的なメリットはなんでしょうか?
0→1の経験を積むことができる
ハッカソンは、その場で組まれたチームで、0からプロダクトを開発していくことがほとんどです。しかも、1日や長くても1週間というスピード感のある開発がメインです。
仕事や趣味でプログラミングをやっている人は多くても、実際にアイデア出しの部分から開発に携わる人というのはそこまで多くはないはずです。
しかし、ハッカソンはアイデアを出し、開発し、発表するところまでが1セット。おそらく、このような経験を積むことができるのはハッカソンだけです。
また、最終的に何か成果物を出さなければいけないので何かしらカタチにする力もつきます。
いろいろな意味で力になることが多いのでオススメです。
最新の技術に触れることができる
エンジニアにとって、最新の技術に触れる機会というのは以外とありません。特に、日頃からエンジニアとして様々な業務に携わっている人は、自分の専門で一杯一杯で時間がないことって多いですよね?
ハッカソンは、そういった技術に触れる良い機会になります。その分野の専門家の人も参加していたりするので、勉強のコストは圧倒的に下がります。
また、VR機器など個人で買うのはちょっと…と思うようなデバイスにも気軽に触れられる機会になります。
それ以外にも、コードの書き方や業務の進め方など毎回勉強になることが多いです。
つながりが生まれる
ハッカソンの参加者の多くは、趣味や実務でエンジニアをやっている人が多いです。なので、趣味が会うことが非常に多いです。
そこで生まれるつながりというのは、会社や学校では生まれない貴重なものです。これが楽しくてハッカソンにきているという人も多いはず!
大人だったら会社同士で提携しましょうみたいな話になったり、大学生同士なら「次のハッカソンも一緒に出よう」みたいな話に繋がったります。
そうでなくても、ハッカソンに出るような人というのは限られるので毎回友人に会うことができるようになったりします。
勉強の仕方が変わる
ハッカソンに出てみると、「意外とこのコードは使えるな!」とか、「実際にサービスを開発する時にはこの知識が必要なのか!」という発見があります。
普段他人が書いたコードをいじることがなかったり、逆に自分でゼロから書き始めることがない人にとっては、かなり新鮮なことだと思います。
そして、それを受けて新しく勉強したりすれば自分の開発者としての腕はさらに上がっていくと思います。
また、プログラマーでないイラストレーターやデザイナーの人も、分野を超えた意見交換が積極的にできるのでお互いのしたいことやして欲しくないことなどを質問したりもできます。
こうしたことができるので、今やゲーム会社やソフトウェア開発会社などは積極的にハッカソンをしているのです。
楽しい
何と言っても、ハッカソンって楽しいです。0から物を作り上げるのも、複数人でプログラムを書くのも結構楽しいです。
なので、まだ参加したことがない人はぜひ1度参加をしてみて、「これ、自分いぴったりだ!」と思ったらどしどし参加すれば良いと思います!
デメリットを考えてみたのですが、すごい人がいっぱいいて心が折れそうになることが挙げられると思います。
でも、人と比べなくても大丈夫です💪 (というか僕がなんちゃってプログラマーすぎて比べたくない)
参加方法はCompass をのぞいてみて!
では、ハッカソンをどこで探すかということですが、”ハッカソン 東京 10月” とか検索すればいっぱい出てくると思います。
そうやっていくつか見つけてみて、自分にあったものに参加をしてみると良いでしょう。
僕がいつも使っているのは、このCompassというサイトです。ハッカソンだけでなく、IT系の勉強会なども開かれているのでぜひ登録してみてください!
他に探し方としては、ツイッターなどで検索をかけたり、他のいろんなサービスに登録したり、知り合いをたどって参加するなどがあります。
とにかく、「自分の興味のあることややってみたいこと + ハッカソン 」でGoogle 検索をかけてみるのはいかがでしょうか?
参加するかで悩んでいる人へ
「参加してみて!」とは言ったものの、
- そこまで技術がないし…
- 自分が足を引っ張らないかな…
と心配になる人は多いと思います。
ですが、結論から言えば、大丈夫です!
僕が初めて参加したハッカソンは、ほとんどコード書けない状態で参加しました。それでも、アイデアを出したりアプリのデザインを決めたりといろいろなことをさせてもらいました。
大切なのが、自分に何ができて、何ができないかを理解し、それをはっきりと伝えることだと思います。
それでも不安な場合は、友達と一緒に参加したり、Udemy などで人とおり技術をさらった後で参加をしてみると良いでしょう。
ぜひ!ぜひ参加してみてください!
最後に:ハッカソンのすゝめ
ハッカソン初心者の僕が、ハッカソン初心者向けに、その目的や参加するメリットなどを開設してきました。
この記事を読んだ人が、1人でも多くハッカソンに参加してくれると書いた僕としても嬉しいです。
と、なんだか偉そうなことを言っているように聞こえたらすみません。
なのでこれからもハッカソンどんどん参加していきたいと思っているので、もしハッカソン先であったらよろしくお願いします!
(その時にブログを見たとひとこと言ってもらえると泣いて喜びます泣)