Qiita 2-day Hackathon に参加してきた

(image)Qiita 2-day Hackathon に参加してきた

Qiita 2-day Hackathonに参加してきました。

僕にとっての初めてのハッカソン参加となりました。残念ながら入賞はなりませんでしたがとてもいい経験になりました。

開発テーマ

ハッカソンのテーマは「GitHub APIを用いた開発+プログラマの問題を解決するサービス」でした。僕がそれでつくったのはこちら。

Github Timeline

動機

githubのNews Feedを僕はよく見るのだけど、もっとキャッチーにTwitterのように見れたらよくない?

アーキテクチャ

  • backend
    • sinatra
    • heroku
  • frontend
    • jQuery
    • hogan.js
    • less.js

frontendの実装については、以前作ったtwitterの検索の経験が生きた。あと、微妙に以前書いたjQuery deferred のテクを使ったり。

発表スライド

ハッカソンの発表で使った発表スライドはこちらです。

http://toshimaru.net/slides/github_hackathon/#/

ちなみにこちらのプレゼンテーションはWEBで動いてますが、JSプレゼンテーションフレームワークにはreveal.jsを使わせてもらいました。プレゼンにはimpress.js flowtime.js deck.jsを検討しましたが、パッと見て一番簡単に作れそうなrevealを採用させてもらいました。

審査基準

実際に作ったものに対する審査基準は下記でした。こんな感じでハッカソンの成果物が評価されるんですね。

  • 実際にプログラマの問題を解決
できそうか
  • 多くのプログラマが幸せになれそうか
  • アイデアはよいか
  • 完成度

ハッカソンを終えてみて

開発時間は二日間のうち、1日目13:00~2日目15:00の26時間くらいありました。僕は朝までぶっ通しで開発して、朝になって三時間ほど睡眠してまた開発、という感じでやりました。

今回のバックエンド・アーキテクチャで使用したRubyアプリケーション(sinatra)、herokuへのデプロイ、両方ともに初めてでした。なので1日目の間にこの辺のやり方はケリをつけておきたくて、それらを朝までに集中してやって目処をつけておきました。目処はついたタイミングで休んだのでそのあと発表までは、かなり余裕をもって望むことができました。このへんの時間配分に関してはよかったと思ってます。

ちょっと残念だったこととしては、僕はNews Feedをよくチェックするので本アプリケーションを作ったわけですが、周囲の反応を見てると他の開発者の方々はそこまでNews Feedをチェックしていないようで、そこまで同意を得られなかったことでしょうか。たくさんの開発者が「これは便利!すぐ使いたい!」となるようなアイディアを発案できなかったのは残念です。最優秀賞をとった方はやはり、みんなすぐに「いいね!」という反応が得られるアイデアでした。

今回のハッカソンは個人参加でしたが、今度はチーム参加もしてみたいと思いました。

PJ(Github COO)と話す!

Github COO のPJとも僕の拙い英語ですが話すことができました。「Githubにおいて重要なことって何ですか?」と聞くと、「オープンソースだ。自分のプロジェクトを公開する、それが何より重要だ。」と答えたので、「なるほど。そういう意味じゃGithubはオープンソースしたい開発者にとっては最高な場所だよね!」というとPJがすごく嬉しそうに微笑んでたのが印象的でした。

僕が作ったモノに対しても聞いてみると、「Coolなアプリケーションだったぜ」といってくれたのが(お世辞だとしても)嬉しかったです。

最後に

入賞を目指すべく、APIについてしっかり予習して当日望んだわけですが、入賞ならず残念。。。だたPJと話せたりいろんなプログラマの「ハック」も見れて良い経験になりました。最終的に動くものを公開できたことも良かったです。

イベント最後にはGithubからMicroプラン1年無料券をいただけるという粋なプレゼントもあり、素晴らしいハッカソンでした。開催していただいたQiitaおよびスタッフの皆様、ありがとうございました。

そして2日間のハッカソンを走りきった開発者の皆様、お疲れ様でした!