• はてなブックマークに追加
  • Yahoo!ブックマークに登録
成果発表は4時間超え。47人連続LTによるアピール合戦が炸裂
開発者100人が腕を競う
PHP Matsuriハッカソンに潜入!
日本最大級ハッカソンイベント「PHP Matsuri」が11月3日〜4日の2日間、福岡で開催された。PHP開発者が全国から集まり、夜通し開発して腕を競うハッカソンでは、今年も数多くの成果が生み出された。参加者100人以上の熱い想いをレポートする。
(寄稿/田中弘治 総研スタッフ/宮みゆき) 作成日:12.12.07
カンファレンス、そしてハッカソン!
ハッカソン

 PHP Matsuriは、今回で3回目となる日本最大級のハッカソンイベント。過去2回は東京・大阪で開催され、どちらも100名近くの開発者(PHPが中心だがそれに限らない)が集まった。多くの参加者が夜通し開発を行うというにわかには信じがたい催しだ。

 ハッカソン(Hackathon:Hack-a-thon)とは、HackとMarathonを合わせた言葉で、その名の通り、開発者が集まって長時間(1日中)ハックをして楽しむイベントのことをいう。日本でも近年ハッカソン形式のイベントは増えてきているが、PHP Matsuriのように毎年100人近くの参加者を集めて行われるのは極めて稀である。

 毎年2日間にわたって行われ、1日目はCakePHPやSymfonyといったフレームワークのコアデベロッパーをゲストに招いてカンファレンスやワークショップを行い、2日目にハッカソンの成果をLT(ライトニングトーク)形式で発表し合うのが通例だ。では参加者はいつ開発をするのだろうか。答えは、カンファレンスの合間と、カンファレンスのない夜中、ということになる。3回目の開催となる2012年は福岡での開催。北は北海道、南は沖縄、そして西はイギリス(!)から、過去最多の総勢110名以上が参加した。

CodeIQ賞や、闇PHP Matsuriで盛り上がる夜
CodeIQ賞

 ハッカソンにはPHP Matsuri の主催者と一部のスポンサーより豪華な景品が贈られる。今年も発売されたばかりのiPad miniをはじめペンタブレットやスターバックスカードなどなど多くの景品が並べられた。そして注目はハッカソンとは別建てで行われたCodeIQ賞。リクルートキャリアが運営するエンジニアの実務スキルを評価するサイトCodeIQ(https://codeiq.jp/)の冠が付いた賞だ。

 PHP Matsuri に先立って公開された事前問題と、当日発表されたCodeIQ賞の問題の二つがCodeIQのサイトを通じて出題された。事前問題に挑戦した参加者に対し、リクルートキャリアのスタッフからRedBullやお酒・コーラなどの差し入れが配られただけではなく、CodeIQ賞の問題の成績上位者にはAmazonギフトカード1万円分が贈られるということで70人以上の挑戦者が現れた。

 ちなみにCodeIQ賞の問題の一部を紹介すると、

  • Q1:「PHP祭り2日目の会場地点での、日の出の時刻は何時何分何秒でしょう?」
  • Q3:「PHPの組み込み関数を一つ、挙げてください」

 ただしQ1はPHPを使って解くという制限付き(なんとPHPには日の出時刻を導く組み込み関数が用意されていてそれを使って解く必要がある)。

 そしてQ3は、ほかの人と同じ関数を挙げてしまっては0点、関数は文字数が短い関数でかつアルファベット順に高い点数がつくらしい(例えば、 trim > isset > rtrim の順に高得点)。2文字の関数piを挙げた参加者は多かったが残念ながらこの解答では0点。知識だけでは高得点を得られない、ゲーム性が高い問題も出題されたようだ。ハッカソンの息抜きともいえるCodeIQ賞は、他の各賞と併せて翌日発表された。

 そしてCodeIQ賞以上の盛り上がりを見せたのが「闇PHP Matsuri」という謎のイベント。昨年は忍者に扮した謎のスタッフが夜な夜なLTを行い、時間オーバーすると(おもちゃの刀で)斬られるというイベントが盛況だった。今年は「アン・リーダブルコード選手権」というイベントが実施された。

 何が行われるかわからないままハッカソンの手を休め、わらわらと集まる参加者達。突如現れたのは、覆面をかぶったその名も“レガシーズ”(おそらくレガシーコードから来ているのだと思われる)の6人。代わる代わるLTする内容はなんと「読みづらいコード」。つまり誰が一番読みづらい(保守性の低い)コードを提示できるのかというコンテストだった。しかもただ読みづらいだけではなく、より笑えるコードを面白おかしくプレゼンして得点を競うという何とも酔狂な、いや深夜にふさわしいイベントだった。

 残念ながらプライバシーの問題があり多くは語れないが、どの発表も会場から笑いの絶えないものばかり。それでいてそのようなレガシーなコードを憎んでいるかというとそうではなく、あくまで楽しんでいるというところがPHP開発者らしかった。気付いたら終電を逃していたという福岡県内の参加者がいる中、夜が更けていっても、多くの参加者は夜通し開発を続けていたのが印象的だった。

レガシーズ
レガシーズ
合計4時間、47人による大LT大会

 2日目。朝10時から希望者によるLT大会が始まった。このLT大会はもはやPHP Matsuriの名物の一つ。今年は過去最多47人のエントリーがあった。LT大会では、一人3分程度の持ち時間で、誰が最も有意義な開発をしたかを発表する。中には3分では収まらずドラを盛大に鳴らされて打ち切られたり、ネタに走って会場を沸かせたりと、非常に多彩なLTが次々と行われていった。

 エントリーし損ねたという東京からの参加者は、ほかの人の発表を見ながら「発表すればよかった」と後悔しきり。毎年こういう参加者が何人もいるらしい。勉強会は参加するだけより発表したほうが何倍も有意義というが、せっかくPHP Matsuriに参加して発表しないというのは、福岡まで行ってラーメンを食べずに帰ってくるようなものかもしれない(?)。

ハッカソンで評価が高かったアプリを制作したのは?
櫻川 幸三氏
株式会社Fusic 櫻川 幸三氏
賞品一覧
賞品一覧

 ハッカソンの成果を採点するのも、PHP Matsuriの参加者自身。発表者が入れ替わる間に採点する。評価の高かった発表者には、前述のiPad miniなどの豪華な景品が贈呈される。

 最も高得点を獲得したのは、「でっかいGoogle Maps」を制作した株式会社Fusicの櫻川幸三氏。複数並べたスマートフォンをnode.jsで連携させ、あたかも1枚の大きいなGoogle Mapsのように見ることができるアプリだ。スマートフォンの小さな画面も、複数並べることで大きな画面と同様に利用できるというアイデアに、参加者から感嘆の声がひときわ大きく上がった。

 櫻川氏自身もスマートフォンの画面を小さいと感じており、何か大きく目立つものをつくろうと思ったことが、今回の作品のきっかけになったとのこと。今回は地元開催ということもあり、Fusic社からは複数の参加者がいたが、どの作品も個性的であったため、同社が「変わった会社」と思われてしまったのではないか、と笑いながら話してくれた。

 夜通し行う開発は眠さとの戦いだったが、発表時に「おぉーすごい。」という歓声が聞こえた時は、苦労した分うれしかったそう。狙っていたiPad miniを手に入れることができ、大変ご満悦の同氏。実は福岡から大阪に遠征した昨年のハッカソンでもiPadを持ち帰ってきたため、2年連続で受賞したことに、ご家族はとてもびっくりされたらしい。

 来年も参加し3連覇を狙っているとのことなので、阻止をたくらむ参加者は、入念な準備が必要と思われる。ちなみに同氏はCodeIQ賞も次点を受賞。日の出問題の関数は、会社で話題になったことがあったとのこと。さすが変わった会社(?)の面目躍如といったところだ。

 次に高得点を獲得し、ワイヤレスポータブルスピーカー「JAMBOX」をゲットしたのは、「超strtotime()」(http://strtoti.me/)を制作した増永玲(@msng)氏(「頭ん中」http://www.msng.info/)。PHPで最も有名な時刻操作関数のstrtotime()を拡張したWeb APIで、漢数字や元号などの日付(例えば「昭和六十三年二月十日」)も正規化して年月日や、unixtimeをJSONで返すもの。発表では、日付のバリデーションができるところや、存在しない日付の場合はnoticeが変えるところを実演し、その便利さに会場を湧かせていた。

 しかし、一生懸命「真面目なアプリとして」つくったものが多少「ネタアプリと思われた」ことに、本人は不満なところもある様子。ハッカソンでは時間が限られるため、以前つくったクラスを活用した作品を制作している。というのも、夜になってコードを書くか、ラーメンを食べに行くか迷った末、ラーメンを食べに行ってしまったことも関係しているらしい。JAMBOXは実物を見てそのかわいさに「これ欲しい」と思っていた増永氏。来年の意気込みを問われると「はい。今度はギョウザもつけたいと思います」と語って笑わせてくれた。

 続いてWacomペンタブレット「Bamboo」を獲得したのは、「クラウド監視くん」を制作したニフティの五月女雄一(@ysaotome)氏。マルチプラットフォーム(ニフティクラウド、AWS、Azure)に対応したIaaS監視アプリで、一般的に監視メニューとして高級品な「電話連絡」を自動化することを目的とした実用重視の本格的な作品。対象クラウドの電源管理や、スペック変更など一通りの運用業務に対応しているだけではなく、監視対象のサーバに異常が発生すると、電話がかかってきて対応方法を選ぶ。

 各社ベンダーのSDKを真面目に触る時間をつくりたいと思っていた五月女氏。以前から興味のあった電話がかけられるAPI「boundio」と組み合わせたとのこと。初めて触るCakePHP2系でつくり始めたが、思うようにいかなかったため、深夜2時にFuelPHPで書き直したのだそう。なんとか動くものがつくれたが、LTでは実演した「検証用にわざとサーバ電源を落下させ、障害を発生させる機能」がウケていた。

 ただ悔いが残るのは、障害発生後の電話受け答えまで見せられなかったこと。電話で「対象サーバの詳細情報を確認する」「対象サーバを再起動する」「障害を無視する」といった操作を見せたかったと語る五月女氏。ぜひ来年、リベンジしてもらいたい。

 GOAL ZEROのポータブルソーラー発電機「NOMAD7」を獲得したのは、「CSVHub」という作品を制作したFusic小山健一郎(@k1LoW)氏。一般的なCSVのフォーマットの順番などをノンプログラマでも変換できるWebサービスで、同氏が公開しているCakePHPのプラグイン「Yacsv」を拡張してつくられている。開発のきっかけは、自身やほかの社員がクライアントから「出力されるCSVのフォーマットを、うちのシステムに合わせて」と言われることが多く、どうにか解決したいと思っていたから。業務系の真面目なWebサービスだったのでLTでの反応は薄いと思いきや、歓声が上がるなど、反応も上々だった。

「Arduinoをはじめようキット」を獲得したのは、@shin1x1氏(Kansai PHP Users Group)の「IS IT CakePHP?」(http://www.isitcake.com/)という作品。WebサービスがCakePHPでできているかを調べるサービスで、URLを入力するとCakePHPで動作しているかどうかがわかる。CakePHPデフォルトの設定やファイルをそのまま放置しているサービスが意外と多いと感じていて、同氏がつくっているものを含めてチェックするサービスをつくったとのこと。「Webサービスをリリースする際は設定変更や不要ファイルがないかチェックしてみて下さい」と語るのは、すでに公開されているので誰でも簡単に利用できるから。

CodeIQ賞

 運営スタッフとしてやるべきことも多く、あまり開発に集中できる時間は多くなかったそうだが、隙間の時間で一気につくったとのこと。「つくりが荒くても、とにかくリリースして発表するのが大事!」とハッカソンの心得も教えてくれた。特にCakePHPユーザーから好反応だったが、仕組みは単純なので、別のフレームワーク用があっても面白いとのこと。ぜひ他のフレームワークに携わっている方もつくってほしいところだ。

 上記以外にもスポンサー企業からの景品は数多く用意されており、発表した47名全員に何らかの景品が配布されていた。

東京・大阪・福岡ときて、来年の開催地は?

 第3回も非常に盛り上がったPHP Matsuri。会場が第1回東京、第2回大阪、第3回福岡と移ってきているため、次は北の大地で行われるのではないかと某スタッフは予想している。実は、会場は特に相談して決めているわけではないが、「何となく」次はどこでやるかというのが決まるのだそうだ。

 予定では次回の開催は2013年の夏〜秋頃とのこと。毎年どこで行われても全国からPHP好きが集まるこのイベント。さて次回の開催地はどうなるのだろうか。今回参加を逃した人は、ぜひとも第4回で熱いPHP Matsuriを体験してほしい。

田中 弘治氏
株式会社ダイレクトサーチジャパン 代表取締役 田中 弘治氏
明治大学政治経済学部卒業。財務労務コンサルティング会社、ヤフーなどを経て、2007年にダイレクトサーチジャパンを創業。主にCakePHPを使ったWebサイト・Webアプリケーション開発事業を行う。現在、コワーキングスペース茅場町を設立準備中。
2011年のMashup Awards 7(MA7)で「Tech総研賞」受賞
  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する

このレポートを読んだあなたにオススメします

初の高校生と女性ファイナリストも! Tech総研賞は「PocketCode」

応募466作品「Mashup Awards 8」最終バトルの結果は?

今年もやってきたマッシュアップアワード「Mashup Awards 8」。今回は「TechCrunch Tokyo …

応募466作品「Mashup Awards 8」最終バトルの結果は?

感情解析、画像認識、空席検索、電話、tab、天気予報APIをお試し

MA史上初の女子向けMeetUp開催!初めてのAPI体験☆

Tech×女子5人のユニット“Quintech(クインテック)”と、リクルートのメディアテクノロジーラボ(MTL)が…

MA史上初の女子向けMeetUp開催!初めてのAPI体験☆

東日本大震災から3年。東北復興から“次のステージ”へ

東北エンジニアが全国をつなぎ地域活性化を担う主役へ

震災をきっかけに、東北でスマートフォンアプリの開発者育成と能力向上を図り、スマホアプリビジネスの活性化を目指して設立さ…

東北エンジニアが全国をつなぎ地域活性化を担う主役へ

データからアプリ開発を支援する逆マッシュアップという新発想

Mashup Awards 9のTech総研賞は「LinkData.org」

常に変化するWebテクノロジーをマッシュアップし、斬新な発想でWebアプリを提案する「マッシュアップアワード(MA)」…

Mashup Awards 9のTech総研賞は「LinkData.org」

学生・社会人の枠を超え、競技プログラマの世界一が決定!

CODE VSが示すプログラマに必要な戦略と問題解決能力

7月21日(日)、六本木「ColoR」で、アルゴリズム活用力とコーディング技術を競い合うプログラミングコンテスト「CO…

CODE VSが示すプログラマに必要な戦略と問題解決能力

応募者は「イケた!」と思ったのに……なぜ不採用?

スキルが高い人材でも「NG」を出した人事の証言

求人の募集要項にあるスキルは満たしていたのに、なぜか結果は不採用。そんな経験をした人も多いのでは? では、採用に至らな…

スキルが高い人材でも「NG」を出した人事の証言

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP