ハッカソン(英語: hackathon、別名:hack day, hackfest, codefest)とは、ソフトウェア開発分野のプログラマやグラフィックデザイナー、ユーザインタフェース設計者、プロジェクトマネージャらが集中的に作業をするソフトウェア関連プロジェクトのイベントである[1]。個人ごとに作業する場合、班ごとに作業する場合、全体で一つの目標に作業する場合などがある。時にはハードウェアコンポーネントを扱うこともある。ハッカソンは1日から一週間の期間で開催することがある。いくつかのハッカソンは単に教育や社会的な目的を意図に開催する。使用に耐えるソフトウェアの開発や既存のソフトウェアを改善することを目標としている場合もある。また、使用プログラミング言語、オペレーティングシステム、アプリケーション、API、主題や参加プログラマーの人数を定める場合がある。 ハッカソンという言葉はハック(hack)とマラソン(marathon)を合わせた混成語である。この言葉はOpenBSDの開発者やサン・マイクロシステムズのマーケティングチームによってそれぞれ自主的に考えだされたと思われ、1999年から使われ始めたと言われている。 OpenBSDによって最初に使用されたことがはっきりとしているのが1999年6月4日にカルガリーで行われた暗号開発イベントであり、アメリカ合衆国から10人の開発者が暗号ソフトウェアの輸出規制によって発生する法的問題を回避するために参加した。 サン・マイクロシステムズがこの言葉を使用し始めたのは1999年6月15日から19日まで開催されたJavaOneカンファレンス
歴史
2000年代半ばから後半にかけてハッカソンは著しく普及し、企業やベンチャーキャピタルが新たなソフトウェア技術の迅速な開発や技術革新、投資の新たな場と注目するようになっていった[1]。いくつかの主要企業がハッカソンから誕生するようになり、2010年のTechCrunch Disrupt NYCで開催されたハッカソンのプロジェクトから誕生したGroupMeは2011年にSkypeから8500万ドルの出資を受けた[1]。 ハッカソンは一般的に(もしある場合だが)イベントに関する主題に関する1つもしくは複数のプレゼンテーションで始まる。その後、参加者達は個々の関心ごとや技能に基づきアイデアを出したりチームを結成したりする。そしてハッカソンの主作業は始まってから数時間から数日間続くことになる。24時間を超えたり、競争が激しかったりした場合、参加者はしばしばピザや栄養ドリンクでくだけた食事をする。また寝る時も寝袋などで雑魚寝する[1]。 終わりには通常チームごとの結果を示したデモンストレーションが行われる。コンテスト要素も時々あり審査員が優勝チームを選出し賞を授与する。多くのハッカソンでは審査員は団体やスポンサーによって構成されている。BarCampスタイルのハッカソンではiOSDevCampのような開発コミュニティによる運営で行われており、審査は通常その分野の同僚によって行われる。ハッカソンでは時々高額賞金が授与されることがあり、TechCrunch Disruptのソーシャルゲームハッカソンでは優勝者に25万ドルの賞金が贈られた[1]。 他のハッカソンではコンテスト要素は無いものの、むしろ既存ソフトウェアの改善に主眼が置かれたものもある。この場合度々ハッカソンはコード上の作業で開発者が直接顔を合わせる数少ない機会の1つを与えるためにオープンソースソフトウェア (en いくつかのハッカソンはモバイルアプリケーションやデスクトップOS、Webプログラミングといった特定のプラットフォームに焦点を絞っている。 イングランドのブレッチリー・パークで行われたMobile appのハッカソンであるOver the Air
ハッカソンの流れ
ハッカソンの種類
特定のプラットフォーム向け
音楽関連のソフトウェアやハードウェアアプリケーションのためのハッカソンであるMusic Hack Dayは2009年以降世界中で20回以上開催され、人気あるイベントになっている[5]。
1999年より例年行われているOpenBSDを使ったハッカソンは先駆者とされ「ハッカソン」という言葉の起源となっている。
Android[6]、iOS[7]、MeeGo[8]といった携帯機器用オペレーティングシステムで動くアプリケーションを開発するハッカソンも複数行われている。 2007年よりPerlをテスト含めて改善するハッカソンが行われている[9]。またHaskell[10]やScala[11]を使った同様のハッカソンも行われている。 さらにHTML5[12]やRuby on Rails[13]といった特定の言語やフレームワークでアプリケーションを作成することを目的とするハッカソンもある。 特定の企業もしくはデータソースを使ったアプリケーションプログラミングインタフェースでアプリケーションを製作する目的のハッカソンもいくつか行われている。Yahoo!が2006年より開催しているThe Open Hack Day(別名"Hack Day")ではFlickrのようなYahoo!運営のウェブサイトのAPIを含めたYahoo! APIが使用されている[14]。Googleでも自社のAPIを使った同様のイベントや旅行会社ロンリープラネット[15]も行なっている。 ウェブサイトFoursquareは2011年に大規模なグローバルハッカソンでは世界30会場で500人以上の開発者がFoursquare APIを使ってアプリケーション製作を競った[16]。 PyPy、Drupal[17]、MediaWiki[18]を使ったハッカソンもある。 政府を改善、具体的にはオープンガバメント
特定のプログラミング言語、API、フレームワークを使用
特定の目的2011年にRewired Stateで開催された"National Hack the Government Day"に参加している開発者