燃えるざっぷ

えるざっぷの日記とか 旧ブログ: http://blog.elzup.com

Armadillo-X1 を動かしてたメモ

公式マニュアルはここ http://manual.atmark-techno.com/armadillo-x1/armadillo-x1_product_manual_ja-1.1.1/ch01.html

最低限度で ssh で接続できるまでのメモ Host PC: macOS sierra

1. 接続する

f:id:elzup:20170619235423j:plain ↑のようにそれぞれ接続して、電源をいれる

2. serial 接続

ls /dev/tty.usb*
> /dev/tty.usbserial-A104O4GX

device を確認する。↑の場合 /dev/tty.usbserial-A104O4GX

minicom で接続 brew install minicom

minicom --noinit --wrap --device /dev/tty.usbserial-A104O4GX

初期設定ユーザとパスは atmark:atmark

3. ssh 設定

公式ドキュメント

update と ssh インストー

su - # pass: root
apt-get update
apt-get install -y ssh

ここまでの設定によりパスワード認証で入れるようになった。

どこで食事するか選ぶためのアプリを作った

北千住に住み始めてだいぶ時間がたった。基本外食で済ませるのだが、いくつか問題が出てきた。飯をどこで食べるのか選ぶのが面倒くさくなってきたのである。近場に通うとすぐ飽きてしまうので、「今日はどこで食べようか」と毎日悩んでいるのである。(「料理しろ」は置いといて)
そして「店閉まってんじゃん問題」である。店前まで足を運んでから知らされ、ガッカリしたことが何度もある。情弱乙である。


あと1年は北千住にいるし、これらの問題と向き合うのはそろそろ嫌なので、ツールをつくった。

単純な話、飯屋の候補をリストアップしたいのである。レストランでメニューを見ながら食事を選ぶのと同じだ。北千住で普段行く飯屋がリストアップされていれば選ぶストレスも減るはずだと考えた。ついでに営業時間を可視化すれば悲しまずに済むのである。

そこだけシンプルに実装したのがこれである
f:id:elzup:20170505021133p:plain
https://elzup.github.io/senju-eat/
↑深夜 2時にスクショしたので24時間営業以外閉まっている。

構成はよくある「 react app から Google App Script のエンドポイントにリクエストして Google Spread Sheet のデータを取る」という流れである。

予想より面倒になったのは営業時間のデータ構造だった。曜日や祝日によって営業時間が違うパターンや、昼がすぎたら休憩時間を入れる店があるので少し複雑になった。

日常的に使いたいので「ホーム画面追加」のアイコンやスマホ表示に雑に対応した。
f:id:elzup:20170505021614p:plain

まだ、まとめてる店に偏りがあるけど、公開してるのでよかったら使ってみてね。

オマケ

開発の仕方について振り返る。
最近は「xの実装にy時間以上時間をかける価値はない」という考え方を大事にしている。「xの実装にy時間かかりそう」はどうでもいい。決めた実装時間内に終わらなかったらキッパリ諦めるのである。これが難しくて、今回も戦うこととなった。まるでギャンブルにハマった人間のように、「もう少し続ければ解決する」「せっかくここまで時間をかけたのにやり方を変えてたまるか」と心がエセヒーローになりたがるのである。
今回は本当に小規模のアプリだったので、全体的に何を使えば最小限で実現できるかもすぐに想像出来たし、gh-pages や Google Spread Sheet を使って正解だと思う。当たり前だけど最近勉強してる react-native で無駄に native 実装はしなかったし、サーバーを立てることもなければ JS の Build 構成やらプロジェクト構成にこだわり時間を浪費することはなかった。このアプリの開発に多くの時間を捧げる価値はないと初めから決めていたからだ。
最終的にポモドーロの記録のから数えると20ポモ(25分セット)使っていたので10時間ほどこれに費やしていた。どんなにグダグダやることになっても8時間くらいしか費やしたくないと思っていたのでちょっとオーバーした。それぞれの実装についてみても決めた時間が来ても実装を続けてしまうことが多かった。ただし、いらない機能を実装してる時の切り捨ては早いタイミングで起こった。例えば開店時間でソートする機能をどう実装しようかとコードを書き始めていたが、そんな無駄な事(や方法)に手をだす余裕はないのである。全体の実装に対する制限時間を意識することで実装するものの選択が洗練されることは、とても実感できてよかった。

ちなみにこの記事を書く時間の目標を決めなかったせいか、気づいたら2時間も使っていた。やはり時間を制限するのは大事だ。

「なぜ人はゲームにハマるのか」を読んでの感想

なぜ人はゲームにハマるのか

なぜ人はゲームにハマるのか

続きを読む

電機大の学生のための Slack と wiki を立てた

この記事は CPS Lab Advent Calendar 2016の15日目の記事です。

14日: IntelliJでJSP/Servlet環境の構築 [mac OS] | 好きなことをして生きる。 - Tech Blog

15日: 何もしてないのにSurface Bookが壊れて何もしてないのに治った話 - あると思います。

www.adventar.org

続きを読む

残留申請 Neo を作った

www.adventar.org 1日目です。 → 2日目 憩庵: スピーカーの電源を遠隔操作するIoT機器を作った話

残留申請の手順にはいろいろと問題があった(後述)ので、再び残留申請のためのシステムを作った話。 うちの大学のローカル向けツールです。

続きを読む

コロプラのインターン 4days に行ってきた

be-ars.colopl.co.jp

コロプラのバックエンドインターンに4日間行ってきました!

続きを読む

esa.io が高いのでラボで代替ツールを作り始めた

この記事は CPS Advent Calendar 2015 11日目の記事です

昨日は 梨原(pear510)の神へと生まれ変わったScanSnap - いつでも梨が食べたい

明日は 梨原(pear510)の丼 - いつでも梨が食べたい

です

追悼 cps.esa.io

ラボでは2ヶ月間フリートライアルで esa.io を使っていた
しかし今後も使用を継続するには高い(30人x500円/月 => 18万円/年)ため自分たちで作ることにした

続きを読む