社内のハッカソンに参加してきました
最近、ハッカソンが流行っていますよね。最近でもないか…。
弊社の勤務先でもグループ会社合同で、ハッカソンを社内向けにやっています。
親会社は、株主さん向けにも、新卒募集のインターン活動の中でも紹介しています。
先日、私も参加してきました。せっかくなので、記録に残しておきます。
開催日時と場所
ハッカソン
2017年10月27日(金)〜28日(土) @SCSK多摩事業所
今回は、初めて、インターン生との共催ということになりました。
インターン生は、夜中開発はできないというお約束があります。
社内発表会
2017年12月1日(金) @SCSK豊洲本社
社内向けの発表会です。一応勤務時間内ですが、許可を貰った上で行っています。
グループ編成
グループは他で開催されるハッカソンと違い、編成は開催する事務局がします。
背景としては、会社の規模や、事業内容の背景もあり、開発経験がない、あるいは、浅いという人も多いです。
開発だけでなく、営業部門、サポート部門があったりしてこそ、サービスが成り立つので、会社全体でみると開発者ばかりにはならないのは、自然なことだと思います。
そのため、開発経験者や経験を考慮したチーム編成がされます。
なので、私と性質が近い人がもちろんいる訳ですが、絶対一緒にならないだろうなぁ…という人もいます(笑)
年齢も様々で、入社1年目もいれば、もうすぐ定年という人もいます。
いろいろな人の考え方、やり方を学べるので、このチーム編成のやり方、面白いです。
勤務時間外の活動
先ほどの日程のうち、金曜日は、有給休暇の使用を前提としています。
メリットとしては、ここでの制作物の権利は、会社に帰属せず、作成者に帰属することになっています。
なので、こうやってブログに書いても、守秘義務項目にあたらないので問題はありません。
また、一方で、遠方からの参加者であっても、交通費が支給されます。ただ、労災対象外なので、別途、保険をかけてくれています。
社内とはいえ、研修センターを借りて宿泊費も負担してくれています。
なので、コストはけっこうかかっているとは思います。
こういうのにお金を出して頂けることは有り難いですね。
社内の人、全てに理解されているとは思いませんが、比較的理解のある人は多いなと。
自分の上司は、好きにしていいとのことなので、好きにしています(笑)基本的には反対はされません。
こいつは、言ってもきかないから、仕方ないなーときっと思われてます(笑)
支給品
希望者には、レンタルのパソコンが、1台、あと、Raspberry Pi、マイク、カメラとか、AR/VR デバイスなど、様々なものを借りることが出来ます。
持ち込みも自由です。
私は、My Mac を持ち込んみました。必要な開発ツールが入っているので。
Raspberry Pi は、セットアップ済みのものが提供される訳ではないので、セットアップ済みのものを用意していきました。
また、使用はしませんでしたが、Google Home Mini も持参しました。
事務局で用意するリストになかったので、持参したら、Google Home ありました(笑)
主なタイムスケジュール
1日目
- 午前 チームビルディング/アイディアの決定
- 昼食
- 午後 開発(環境作り〜開発)
- 夕食
- 夜間 開発(開発〜テスト)
2日目
- 朝食
- 午前 デバッグ/プレゼン準備
- 昼食
- 午後 発表会、審査
- 後片付け
- 夕方 結果発表〜パーティ
作ったもの
Google Home on the kitchen というテーマにで、キッチンで料理動画をみているときに、その動画の再生や停止ができるというものです。すごくシンプルに作ることを考えたので、開発のボリュームはそこまで大きくありません。
デモ動画
技術背景
システム構成図を以下に示します。開発の難易度を下げるために、IFTTT と、使い慣れた AWS 環境を利用しています。
苦労した点
開催されたのが、Google Home の日本発売の直後で、私も入手したのが、1週間程度前という状況だったので、IFTTTや、Actions でどういう形で連携が可能か、調査から行いました。
Google Home を使ったことのある人なら、反応の精度の良さについては、驚かされたと思うのですが、予約語で使われているものが多く(「再生」とか)、ひたすら試して使えそうな言葉、話し方の工夫をして、思う出力を得ることに注力しました。
人間とは面白いもので、認識されると分かると話し方が早くなったりするようで、ある時点から認識されないと悩んでみたりします。
少しゆっくり丁寧に話すと認識しやすくなるようです。
あとは、WebSocket の部分ですね。私は、仕組みは知ってましたが、プログラムの書き方は、今回、初めて知りました。
とても勉強になりました。いろいろなパターンでコード書いて、モノにしておきたいです。
また、nodejs の有識者がチームにいなかったので、構成が少し冗長な構成となっています。
発表会
発表会に向けて工夫した点は、シナリオを固定したことです。
前項にも書いていますが、音声認識の問題もあるので、全体的なデモシナリオを固定することで確実なデモができるようにしました。
デモは、私が考えたものではないのですが、よいデモができたのではないかと思っています。
結果
結果は、審査員の審査により、優勝でした。別途、テクのこ賞という高専ロボコンのように、優勝しても、実際の優秀賞は別にあるみたいなところがあるので、実質、2位というのが実情でしょうか。
良い結果をいただけたことにチームメンバーの皆様に感謝しています。審査員コメントに、Google Home に頼りすぎとも言われましたが(笑)
その後
発表会が終わった翌日、チームメンバーから思い出だからといって、Google Home 購入者が発生し、同じハッカソンに参加した人たちにも、気に入って、続々買うという面白いことが発生しました。会社の同僚にもデモ見せたので、Google Home といったスマートスピーカーが、私の周辺で広まっています。
私は、最近、Amazon Echo も購入しました。
プログラムを全体的に見直して、Echo対応も試してみたいと思っています。
コメント