2017/10/28-29
福島県会津若松市、会津大学にてMASHUP AWARDS 2017 (
以下MA)というハッカソンに市川電産が参加しました。
ハッカソンメンバーには市川電産と会津大学生1人を加えて3名、赤髭王というチーム名で出場。
MAでは開発タイムに入る前にまずアイデアソンとチームビルディングを行います。
<アイデアソン>
・各テーブル、3〜5名に分かれ、ジャンルとそれに準じるキーワードが書かれたカードが複数枚テーブルに渡されます。
・キーワードから連想する作品のアイデアを3分間書きまくり、
時間が来たら別のカードを引きます。これを数回繰り返す。
・自分が出したアイデア全部を今度は別テーブルの人と意見交換します。
・もらった意見を反映させ、ブラッシュアップしたアイデアをシートに清書します。
・書き終わったアイデアシートを全員で見て回り、良いと思ったアイデアには
☆をつけていきます。その時アイデアに対して意見がある人は付箋にコメントを記入して貼り付けます。
・☆の数が多い人のアイデアを数名分発表します(今回は時間不足でこちらがカットされました)
<チームビルディング>
・先ほどのアイデアシートもしくは自分が作りたいと思っている作品を元に、
ナンパ方式でチームを作成します。
合言葉は「一緒にどっスか?」
<開発タイム>
・ここで出来たチームで、各々の出来る事を割り振り開発作業に入ります。
・開発時間は24時間(その時間をどう使うかはチームに委ねられます)
・他人のアイデアはパクリ上等
・遠隔助っ人募集OK
という割とルール無用のハッカソンなのがMAです。
また、協賛企業から技術提供が行われ
サイボウズ株式会社より kintone
アプレッソより DataSpider Servista
日本IBMより IBM Bluemix
富士通クラウドテクノロジーズより ニフティクラウド
マイクロソフトより Microsoft Cognitive Service
会津若松市役所より DATA for CITIZEN
が無償APIやデータ等として無償で利用できるようになっている他、
MA持ち込み素材として
ロームセンサ評価キット
(加速度、気圧、磁場気、近接照度、カーラー、磁気、温度、紫外線)
MESHセット
会津大学提供素材として
ドローン
NECOMIMI
ipod など
多彩な素材が提供されました。
提供素材はどれを使っても、使わなくても自由ですが、利用した提供企業からは企業賞がもらえることもあります。
————————————————————-
今回私たは、アイデアソンで出されたものをベースに開発。
「未だ見ぬ本に出会うワクワクを勝手にお届けします!」
をコンセプトに、自分の性格にあった本が図書館から勝手に送られてくるというアイデアで開発スタート。
まず図書館から家に送られてくるというシステムが、速攻でカットされます。
ハッカソンでは時間内に開発できないものはカットするのが鉄則です。
では本はどうやって選ぶのか?
kindleで購入、amazonで購入…様々な方法を検証した結果、青空文庫を利用することになりました。
※青空文庫URL
次に性格にあったの部分をどうするか…まず各自の性格分析をツイッターで
行うことになりました。
ツイッターからログを抜き取りデータベースを作成、それをIBM personality-insightsで分析をかけます。
また、性格分析だけでは毎回同じ結果になってしまう為、ツイート内容から
tone-analyzerでその時の気分も分析します。
本当はツイッター認証で誰でもツイート分析をかけれるようにしたかったけど、
ツイッター認証を作れるメンバーがいないので、メンバー3人分のみを登録。
ハッカソンではメンバーが開発できない分野はカットするのが鉄則です。
各自の性格分析が終わった後は、本の内容を分析します。
青空文庫では著作権が切れた本文がネット上で公開されている為、本文をコピペして先ほどと同様の性格、tone分析をかけます。
tone分析については英語でしか分析ができなかった為、Watson language-translatorで英語に本文を翻訳をしてから分析。
本を一つ一つ解析し、青空文庫性格データベースを作り上げます。
作成したデータをkintone Rest APIに保存し、リアルタイムにデータが
引き出せるようにします。
データベースを作成している間にツイッターアカウントと本のデータを掛け合わせるためのコード書きや表示用のHPも作成します。
ハッカソンでは1人が出来ることを全力で進めるのが鉄則です。
ロゴ、データ、解析表示など徐々に必要なパーツが出来上がってくると
最後にそれらを統合する作業が行われます。
この統合作業は各々が全力でコードを書いている結果、組み合わせると上手く
動かなかったりする事が多いので、余裕を持ったペースでこの時点に辿りついておく事が大事です。
ここで協賛企業のAPIを使うとスムーズにいくので、是非活用しましょう。
完成時間は開発終了の1時間前に設定し、それ以外の時間はプレゼン資料の作成をします。
ギリギリまで開発をしていると予期せぬエラーに対応できないことと、
審査員に伝えるための資料はきちんと作った方が評価につながるからです。
また、デモも含めるので動作テストを繰り返すことは重要です。
ハッカソンでは今まで動いていたものがデモ審査の時にだけ動かない事が
よくあります。
市川電産ではこの様なトラブルを避ける為に動いたシーンの証拠動画を残して
おくことがあるぐらいトラブルが起こります。
というわけで完成した作品はこちらになります。
https://hacklog.jp/works/51547
————————————————————-
<審査タイム>
チーム赤髭王は6番目の発表でした。
それぞれが担当した部分をプレゼン時に発表し、デモも問題なく稼働。
見事kintone賞とIBM賞をいただくことができました。
MAの最終締め切りは11月13日、その間に作品をブラッシュアップして
2ndステージに向けて作り上げていきます。