アカツキハッカソン部の第2回イベント「クリエイティブ * AWS => 業務を楽しく!」を7月5日に開催いたしました。沖縄の会社員から香港出身スタートアップ、ハッカソン主催者や女子学生に至るまでご参加いただき、非常に濃い1日を過ごす事が出来ました。
以下、レポートいたします。
ハッカソンの概要
- 日時:7月5日(土)
- 場所:アカツキ 本社オフィス
- テーマ:クリエイティブ * AWS => 業務を楽しく!
- ゲスト:関氏 (Hack camp)、安川氏(Amazon Web Services)
「クリエイティブ * AWS => 業務を楽しく!」
今回は(株)アマゾンウェブサービス シニアソリューションアーキテクトの安川氏をお招きして、AWSを活用して業務を楽しくするアプリ開発のハッカソンを開催。
AWSのサービス紹介、AWS-SDKの概要、SDKを使ったサンプルコードから、アクセスキーIDとシークレットアクセスキーを公開せずに開発する方法など、30分程度ご紹介いただきました。
評価基準: 1)クリエイティビティ、2)完成度
今回は発想の良さを評価する「クリエイティビティ」と、実際の運用として使えそうか・正常に動作するかを評価する「完成度」の2軸が評価基準です。
賞品 : ハッカーグッズ
HackCamp関氏監修のもと、合計20万円を超える以下のハッカーグッズを準備。優勝を目指して、皆様意気込みます。
- Happy Hacking Keyboard
- Realforce
- Arduino & Raspberry Pi & 拡張キット & MagicCube
- Bose QuietComfort15
- iPad mini
- PHILIPS Hue
- ルンバ620
- Oculus Rift Development Kit 2
- RedBull 100本
当日の様子
関氏のもと、アイデアブレストがはじまります。
マンダラートを活用したアイデアピッチ
二人ペアによるSpeed-Storming
アイデアの書き出し
アイデアへの投票
人気案のプレゼンタイムとチーム決め
開発開始!
今回、サーバーサイドのテーマという事もあり、地味な事が多いかと思いきや、すでにユニークな案が登場。これからどの様なツールが生まれるのか楽しみです。
しかし、この時点で既に12:00。発表の19:00まで開発時間7時間のシビアな戦いです。参加者にはお弁当が振る舞われ、開発が始まりました。
AWS 安川さんによる強力なサポート
コンソールの操作から、AWS-SDKの応用例、CloudSearchといったβ版のSDKサポートまで、安川さんの豊富な知識と経験によって開発がサポートされます。
レッドブル
終了のカウントダウン
終了直前まで開発や発表資料の調整が行われます。
発表と表彰
総合優勝: あかべこチーム「EC-Con」
総合優勝は、あかべこのEC-Con。このハッカソンのために沖縄から参加された照屋さんの発案です。照屋さんの会社では、チームで使う開発サーバをAmazon EC2上で運用されていて、t1.microといえども常時起動するコストに悩まされていました。 コスト増を解決する方法として現在運用されているのが、照屋さんが朝一番早く出社して開発サーバを起動し、夜一番遅くまで残って開発サーバを止めること。 すごく辛そうなお話です…。
今回のハッカソンでは人力による運用を解消すべく、「人とAWSを連動させる」仕組みを開発されました。
実装方法としては、机に設置するiBeacon端末と個人の携帯端末の紐付き情報を登録しておき、近づいた事を検知すればAWS EC2インスタンスを起動、離れた場合は停止するという内容です。 GPS ではなくiBeaconにすることで数mの範囲を精度高く検知することができ、この用途にぴったりなソリューションと思います。
インスタンスを起動/停止するだけではなく、収集した情報を出退勤として自動記録もしています。発表のデモンストレーションで、実際にEC2の起動/停止も確認することができ、成功したときは会場から歓声が湧きました!
「人とAWSをリンクする」という発想も、ツールの完成度も有効性も高い、文句なしの優勝作品でした。
副賞: 一気通貫賞 いーぴんチーム「DDoS対策」
情熱枠で参戦した一人チームいーぴん。唯一、開発からプレゼンまで1人で遂行した点と、プロダクトにおいても、すべてを一気通貫した点をとり、チーム名にちなみ麻雀に関連した副賞として付与されました。
モチベーションはAmazon Kinesisを使ってみたいということだけ、とお話されていましたが、「Webサーバ上のFluentd -> Kinesis -> Kinesis Client -> InfluxDB -> Grafana + Elasticsearch」の構成を7時間で作り上げたのは脱帽です。
また、Grafanaサーバの構築にはDockerを使い、LOCUSTによってログを大量に生成してデモするなど、それぞれで選択した技術も素晴らしいものでした。
また、InfluxDBにロードするための、Python版のKinesis Clientツールも一人で作り上げた(influxdbの各種指定オプションやログ取得インターバル、ログ量の閾値設定によるエラー出力まで実装済み!)ということで、その技術力に驚きを隠せませんでした。
副賞の予定は無かったのですが、審査員一同その技術力と完成度に感動し、新しい賞を設けることとなりました。これは本当にすごかったです。
Amazonの森チーム「President Call」
Amazonのコスト発生状況をiPhoneアプリでシンプルに表現し、AWSに詳しくない決済者が簡単に確認し、担当者にボタンひとつで電話ができるというアプリでした。 実装はiOSのCloudWatch-SDKを利用。開発中はプロパティの指定を間違えている時のエラーメッセージが空文字だったりして、かなり苦労されていました。しかし、時間内で動く状態まで作り上げ、プレゼンもしっかり準備している様はハッカソンベテランの風格がありました。
りぷらすとれいんチーム「リプラストレイン」
Twitterのつぶやきの内容をCloudSearchで分析して、有用な情報をツイートで返してくれるというサービスです。 「where is xxx」とつぶやくと、それに応じた位置情報を返してくれるデモを披露して頂きました。 CloudSearchはまだbeta版で、Ruby SDKよりJavaScript SDKの方が開発が進んでいたためにそちらを使うことにした、使いたい機能のメソッドを自分で実装したという話もあり、技術的難易度の高さが伺えました。 完成度としてはもう一歩でしたが、素晴らしいチャレンジと成果でした!
AWSチーム「AWC」
どこかで見たことがあるような7色の丸いグラフによって、AWSの課金状況を分かりやすく表示するサービスです。 これを使うことで、IAMの詳細な権限設定をせずに、参照用の分かりやすい(Elasticache -> キャッシュといった感じで、AWSを知らない人でも分かりやすい)画面を提供するところが良かったです。 個人的には「Sexyな運用が課題だったので、awc.sexyというドメインを取った」というのがかなり心に刺さりましたw
懇親会
昨日の敵は今日の友。ピザとお寿司を肴に、みなさま、思い思いに交流を重ねました。
最後に
どのチームも技術力&完成度がすごく高くて、めちゃくちゃ楽しい時間でした。
お忙しい中、また休日にも関わらずAWSより当日メンターとしてご協力頂いた安川さん、ご支援頂いた堀内さん、大谷さん、ありがとうございました!
そして、ハッカソンに参加された皆様、本当にありがとうございました!!