はじめに
初めて Yahoo! Hack Day 2019 に参加してきました。
流石に24時間ぶっ続けでの開発はしんどかったけど、
あのわくわくさんからwakuwaku賞(審査員特別賞)をいただけて、いい思い出になりました。
Hack Day 2019 で作ったもの
MOGbee
スマホ依存症の現代人からスマホを引き剥がし、家族団欒の邪魔を通知するかわいい充電器、MOGbee を作りました。
90秒プレゼンの動画はこちら
MOGbeeの構成図
MOGbeeは、スマホがwifiを介してラズパイにつながることで、LEDやサーボモータが動作する仕組みになっています。
この記事は、ハッカソンでラズパイ工作をしようと思っている方(と未来の僕)に向けて、ハッカソンに行く前に準備して良かったことと、今後準備したほうがいいものについてまとめました。
⭐ 準備しておいて良かったと思ったもの
タコ足コンセント
ラズパイ工作には電気が必要。一人でも 6台 (Mac, ラズパイ, スマホ×2, wifi, ディスプレイ)の電源が必要だったので、多いに越したことはなさそう。
今回はタコ足コンセントに加えて最近買ったUSB電源分配器も持っていったので、盤石だった。
wifiルータ
ハッカソンではwifiが用意されている場合が多いが、参加者が多いと繋がりにくいし、最悪自分の端末が複数のネットワークに別れてしまいうことも・・・
特にラズパイを使う人にとっては ssh で繋げないことは死活問題になってしまうため、確実につながるルータがあることは通信的にも精神的にも非常に安心できた。
最近契約した どんなときもwifi が思わぬところで活躍してくれました。(ステマじゃないよ)
☔ 準備しておけば良かったと反省したもの
PCからラズパイへのリモートデバッグ環境
GPIOを使ってLEDを光らせるのはラズパイ上で動かさないとできない。しかし、開発はいつものなれたPCでIDE使いながらやったほうが圧倒的に効率が良い。
今回は、PCで開発→GitHubにpush→ラズパイの前まで移動→ラズパイでpullコマンドを打つ、という無駄極まりない方法で開発してしまった・・・
ってことで、visual studio code のremote Developmentの設定をしとけばよかったと反省。(愛用しているpycharmにはお布施してないので、remote developできない orz)
もしくは、sshがつながらないことを考えて、ラズパイが自動的にpullしてくれるツールを作っときたいな、と思った。年末暇なら、オープンソースを作ろうかな〜?
[2020/01/18追記]
ラズパイ向けCDツールってのを作りました!
(年末年始に作ったのに記事書いたのが1/18ってさぼりすぎ)
https://qiita.com/tiwasa/items/bba672f65d1ded116dbe
定期的なラズパイのimgバックアップ
24時間の開発時間は長く疲労が貯まるものだった。そんな中、残り4時間でラズパイの中身をぶっ壊すと、チームメイトが頑張ってきた時間と、返上した睡眠時間がすべて水の泡になります。どのタイミングでバックアップと取るかは、予め計画を立てといたほうが良いと思いました。
サーバを自動起動させたいと思って、開発終了直前に /etc/rc.local にコマンド書いて再起動したときのヒヤヒヤ感は精神安定上よろしくなかった。
さいごに
Hack Dayに参加できて、すごく良かった!
70組以上の参加者がいたにもかかわらず、アイディアがかぶらない独創的なハッカー達が作り上げる発表を聞いているだけで、楽しくなれました。
特に、Happy Hacking賞をとった「ポピポポピピプピリロピロリププププピーポ」さんのプレゼンはめっちゃ笑えて印象に残りました。僕も理系ギャグを入れたプレゼンをいつかやってみたいです。
「とりそば弁当」さんのブースに伺った時には、人の顔にジャガイモが追従する精度へのこだわりを全力で語っていただきました。最高にハッカソンやってるなーって感じて、嬉しくなりました。
また来年も参加したいな!!