masahikoweb


2014/11/16 Sun

ハッカソン発表

TechCrunch Tokyo Hackathon 2014

11月15日(土)〜16日(日)のテッククランチのハッカソンに参加してきた。
提供されるAPI(機能)を使って2日間でプロダクトを完成させるイベント。

前回のことを調べていると、チームで来ている人が多いらしく、今回はチームで参加してみようと思い、声をかけ4人で参加。
あと、自分は広く浅くはできるけど特別これができるというものがないので一人でいくとチーム作れるかな、という不安もあったこともある。フロントエンドは得意だけど、こういうハッカソンでは一番いらない気がする。Bootstrapなんかを使ってさくっと作れちゃうエンジニアのほうが需要あるだろうし。

ハッカソン1日目

Y氏(CSS Niteの懇親会で会った人)、H氏・K氏(ドコモカップ東北で会った人)の、自分含めて4人。自分とY氏がデザイン枠で、H氏とK氏がプログラマー枠。
現地のビルで待ち合わせ。受け付けをし、空いている席に座る。

会場の様子

API

以下、今回提供されるAPI。

・株式会社デンソー: NaviCon URL発行API、MapQR発行API、KKP-くるくるピ-
・株式会社エクシング: 言語解析WebAPI
・HOYAサービス株式会社: VoiceText Web API
・セイコーエプソン株式会社: MOVERIO BT-200
・株式会社朝日新聞社: 朝日新聞記事検索API
・楽天株式会社: 楽天API
・株式会社構造計画研究所: クラウドメール配信サービス SendGrid
・Gracenote: 音楽ソリューションAPI
・KDDIウェブコミュニケーションズ: クラウド電話&SMS API Twilio
・株式会社ぐるなび: ぐるなびレストラン検索API、ぐるなびレシピAPI
・インテル株式会社: Edisonボード、Galileo開発ボード
・シャープ株式会社: ネットワークプリント
・ソフトバンクロボティクス株式会社: Pepper
・株式会社NTTドコモ: ドコモAPI

数が多いこともあり、どれを使うか迷う。ここに来る前にもどういうことができるか考えていたけど、なかなか難しい。

APIの説明

アイディア出し

アイディアを紙に書いて、机の上に置く。みんなのアイディアを見て、良さげなアイディアに星マークをつけていく。
上位のアイディアの人は発表。H氏も選ばれていた。

チームビルディング

やりたいことを軸にした、ナンパ形式でチームビルディングが始まる。
自分たちは、H氏の案でいこうということになる。そこへ、ウェブエンジニアの人が声をかけてきてくれて、5人でチームを編成。思った感じでは、ディレクターがあぶれている気がする。また主催側が「デザイナーの方いませんかー」と声をかけていたので、デザイナーは少ないのかもしれない。

開発1日目前半

加わってくれたのは、香港出身のLさん。遅いお昼をしながら、改めて自己紹介。
チーム名は「1000倍速」。

作るものは「おばあちゃんが、孫が元気にやっているのを知るサービス」。具体的には、自分のSNSを登録すると、一定期間ごとにおばあちゃんの家(登録した電話番号)に電話がかかり、キーを伝える。そのキーをコンビニで入力することによっておばあちゃんがSNSの写真を見るとこができるサービス。

具体的なサービス内容を決めていったり、APIの仕様を確認していくなかで、いくつか課題ものぼったが、代替手段も特に思い浮かばず、このまま開発を進めることに。

中間発表

それぞれのチームが、自分たちがなにをするのか発表する時間が来る。スケッチブックに簡単に書いたものを見せながら話す形式。ちらちらと目に入っていたが、小学生の女の子(と大人の人)も来て発表していた。ハッカソンは、去年あたりから徐々にプログラマーあたりに認知されるようになってきて、様々な人が参加するようになったんだなと感じた。また、海外の人も多い印象。
チームは32チーム。1人のところもあれば、6人くらいいるところもいる。全員で150人くらいだろうか。

開発1日目後半

自分はリーダーを務めさせてもらう。プログラマ3人は、APIの仕様の確認やプロトタイプの作成。
私含むデザイナ2人は、画面構成を考えたり、サービスを俯瞰してみたりする。
APIの仕様については、各企業の方が教えてくれる。

黙々と作業をするときもあれば、お互いしゃべりつつ話をすることも。
夜に支給されたレッドブルタワーは一瞬でなくなる。

前の会社でお世話になった人が来ていることを知っていたので、声をかけにいく。まさかこんなところで再会するとは思わなかった。いまお互いどうしているかなどを話す。チーム編成を聞いてみると、凄そうな人が集まってるし、作るサービスも面白そう。

夜は泊まっていくかどうしようか悩んでいたけど、自分は泊まっていくことにした。帰宅するひとが1人、近くの大江戸温泉に泊まりに行く人が2人。大江戸温泉は、自分もお風呂に入りに行くだけでも行こうと思ったが思ったより値がはるため断念した。

レッドブルタワー 開発

開発2日目

椅子を3つ並べて3時間くらい眠れた。朝6時。わりと残っている人が多い。みんな眠たそう。
少し外に散歩にでかけて、作業に戻る。同じチームの他の人もちらほら戻ってくる。

2日目も、作業を続行。自分はほぼフロントエンドのコーディングなので、見た目のところではあまり関わらず。開発側では、特に音声にハマっていた。Twilioの自動音声がどうもうまく読み上げてくれないことと、デバッグするのに毎回電話をかけていたことで特に時間を取られていた。最終的には、音声はHOYAのAPIを使うことになった。

作業の終わりは16時半。開発時間はおよそ24時間。3時には一度結合テストを行い、そのあとちょこちょこ修正を行いつつ、プリントがきちんとできるところまで確認する。確認しにいく際に1階に行くと、コスプレ会場になっていた。

16時半。作業終了。発表のために移動を開始する。プログラマの3人には、いろいろ無理を聞いてもらい、その度に実現してもらっていた。ちなみに昨日加わってくれたLさんは、ハイパーエンジニアだった。

使ったAPIは、以下。

・HOYAサービス株式会社: VoiceText Web API
・KDDIウェブコミュニケーションズ: クラウド電話&SMS API Twilio
・シャープ株式会社: ネットワークプリント

VoiceTextの音声を使いTwilioで自動音声の電話をかけ、キーを教え、ネットワークプリントでキーを入力して印刷する。

朝焼け 朝 プログラマの面々

発表

発表は基本的にパワポなどのプレゼンソフトは使用できず、デモメイン。発表時間は3分(始めの予定は2分だったけど)。トラブルがあるかもしれないことを考慮すると、少し時間が少ないかもしれないくらいの時間。あまり余計なことをせずに、最大限魅力が伝わるようにしなければいけない。
発表の練習もほとんどする時間もなく自分たちの発表になる。
発表する際、投影テストのときにはあったプロジェクターに接続するためのコネクターがなくて超絶あせる。しかし、投影テストのときにはなかったL氏のパソコンに接続できるコネクターがあったので、急遽1〜2分の間にL氏のパソコンで環境を整えてもらい難を乗り切る。
発表は、案の発案者であるH氏に全力のフォローをしてもらいながら、自分がメインでしゃべる。裏の技術面の操作はL氏。
うまくいくかどうかが心配だったけど、無事に動いた。Twitterの認証をして、電話番号等を入力し、プログラムを動かして電話がかかる。印刷は事前に用意したもの。自動音声が、10桁の番号が必要なことを言うところでは、予想以上に会場が爆笑のうずに。

他のチームの発表では、ロボットのPepperがうまく動作せず、最後まで満足のいく発表をできなかったチームも。ハードウェアを扱ったチームは発表時にトラブルが多かったが、そのドキドキがいいのかもしれない。あとは単純に、ハードウェアを使った発表は面白い。

個人的に一番面白かったサービスは、「アグレッシブ離婚」という離婚をお手軽にするウェブサービス。配偶者の電話番号と自分のメールアドレスを入力すると、配偶者へ電話がかかり、自動音声で離婚の旨の自動音声が流れ、離婚する場合は1を……という感じで案内され、離婚が成立するとメールが届き、離婚届を印刷するキーを教えてもらえる。
実際にサービスとして稼働できるかはさておき、APIをうまく使っていて面白いと思った。今の時代、印刷しなければいけないものというのは限られているけど、それで離婚届を印刷してしまおうという発想。無機質な音声が合う配偶者への自動音声電話。

全員の発表が終わる。ちょうど3時間。長いけどあっという間だった。

1000倍速 アグレッシブ離婚

懇親会と結果発表

結果発表が出るまでは、懇親会。飲み物と食べ物が振る舞われた。1年前のリクルートのハッカソンのときにも来ていた人、前の会社の人、アグレッシブ離婚のチームのリーダーの人、Pepperのチームの人、小学生の人、色々気になる人に声をかけたり、かけてもらったり。それ以外は、自分のチームの人たちと歓談。

結果発表。
残念ながら、自分たちのチームは賞はもらえずじまいだった。上位に選ばれていた人は、技術的にも内容的にも面白いものだった。

小学生 懇親会

全体的な感想

今回の目的は、楽しむことだった(最初のメンバーには伝えていた)ので、こういった経験ができて本当によかったし楽しかった。もし、入賞することが目的だったとしたら、いくつか反省点はあった。早い段階でのサービスの検証やヒアリング等をもっとすべきだったし、私ももっと俯瞰して作業を進めていけばよかった。事前にAPIの仕様をもっと深く調べてきてどういったものが作れるのかまでアイディアをもっとたくさん出してきてもよかった。また、どういった目的があったにせよ、目的や目標をもっと明確にして、どういったことを優先させるかなどをもっと共有するべきだったかもしれない。
それらを含めて、悶着したり、考えたりしながらの、本当にマラソンをしているみたいな感覚は、疲れたけど気持ちよかったし面白かった。

ハッカソンは、どう使えば面白いのかわからないAPIから、新たなアイディアが誕生する様を見ているのは刺激になった。最近は、デザインばかりで、あまりなにも作っていないので、自分もなにかしら作りたくなった。

持ち物やツール

今後、こういうハッカソンがあれば持ってきた方がいいもの(今回はだいたい用意されていたけど)

  • PC(ないと始まらない)
  • WiFiルーター(フリーの無線LANの環境があったがつなげる人が多いため)
  • 電源タップ
  • ノートとペン(スケッチブックを持ってきたけど使わなかった)
  • 大きめの付箋
  • 名刺

今回使ったツール

  • グループウェア:ChatWork(Slackよりインターフェイスやできることなどがしっくりきたので)
  • モック制作:Moqups/Cacoo(共同作業はCacooが適していたので途中で移行)
  • バージョン管理:Git

関連記事