人生100年!生涯エンジニア人生!

楽しいエンジニア人生!

勉強会などに行く時にポイントゲット

ポイントサービス

関東圏だけの話ですが、東京メトロJR東日本都営地下鉄では、鉄道に乗る際にポイントをゲットするサービスを行っております。

www.metpo.jp

www.jrepoint.jp

ToKoPo 都営交通のポイントサービス | 東京都交通局

この手のサービスは、行動情報をビックデータとして保持して、それをマネタイズしてます。 我々はポイントをもらえるが、ポイントよりも高い価値の個人情報により企業に情報が売らられている訳です。
正直な所、某Tなんとかなどは、個人情報を識別できない形にはなっていますが、それをマネタイズ情報として色々な所に売られているとは思います。
それが気持ち悪いと思う方はサービスを利用しない選択があるので、某Tなんとかは使わない人も多いと思います。

Suicaは過去に炎上した

ただ、Suicaなど交通系ICカードだと使わない選択肢が選びにくい状況になりつつあります。
過去には、JR東日本と日立がオプトアウト無しでやろうとして炎上したこと有りました。
これから感じる事は、嫌な話かもしれませんが、個人情報は価値が有ります。
www.itmedia.co.jp
Suicaなど、炎上した結果、Suicaの情報を保持するJR東日本は外部に出すのは、デフォルトは止めて、オプトアウトを受け付けるようにしました。 www.jreast.co.jp

PASMOのメトポを利用しよう

PASMOは?となると、PASMOは個人情報を保持するのは鉄道・バス会社じゃ無く、PASMOと言う会社が個人情報を保持して、その情報を鉄道・バス会社に渡す形式になっています。 その為、PASMOは鉄道・バス会社に情報提供しない場合は、PASMOの利用を停止してくださいとなります。

2018年5月31日までに登録し、2回以上東京メトロを利用すると、500ポイント貰えるので、今回メトポを使う事にします。
規約を読んで登録しました。
規約 | メトポ

3回利用したので519ポイント有りますが、チャージ出来るのは510ポイントなので、510ポイントゲットしました。 券売機にてチャージしました。




PASMOチャージ

Suicaもキャンペーン中

なお、Suicaも2018年6月30日まで、キャンペーンしてます。

Ruby on Rails の第3章をやりました

Ruby on Rails の第3章をやりました。 railstutorial.jp
ハマリどころが2カ所ありました。
1. テストが、そもそも動かない
2. 演習内容が解りにくい。

テストが、そもそも動かない

まず、テストが、そもそも動かないのは、恐らくチュートリアルの抜けだと思いますが、rails db:migrate を一度実行しないとダメです。
そして、 rails db:migrate しても動かないのは、 AWS cloud9ならではの問題らしく、 AWS cloud9には、tmux が入っていないので動きません。

sudo yum install -y tmux  

とやって、tmux を入れればテストが動きます。

演習内容が解りにくい

「3.42: rootルーティングに対するテスト」で、以下のように記載があるのですが、置き換え?何に?と思ってしまいます。

FILL_INと記された部分を置き換えて、rootルーティングのテストを書いてみてください。

他のテストは get static_pages_home_url とか記載しているから、 _url だろうと予想はつきますが、最初はサイトトップだから、 static_pages_url としたがダメで、static_pages_root_url でもダメだった。
最後に、まさか、これは無いだろうと思ったけど、 root_url としたら、これが正解!でした。
まあ、こういうのがエンジニアの感ですけど、それじゃチュートリアルとしては、いかがなものかなと思う。

正解は、こんな感じです。

test "should get root" do  
  get root_url  
  assert_response :success  
end  

Ruby on Rails 5アプリケーションプログラミング

Ruby on Rails 5アプリケーションプログラミング

Ruby on Railsの勉強 少々はまる

結論

Herokuなどにdeployするときは、事前に rake assets:precompile を行ってからdeployをする。
もしくは、ソース編集した後に bundle install してからdeployする。

何が起きたか?

Herokuにdeployしたら、「the page you were looking for doesn't exist.」と言う画面が出ました。
f:id:hideaki_kawahara:20180528000849p:plain
つまり404、表示するものが無いってことです。
ローカル(AWS cloud9)では、この現象が発生しません。

アセットパイプライン

色々と検索すると、アセットパイプラインというのが影響しているのが解る。
railsguides.jp

アセットパイプラインの第一の機能はアセットを連結することです。これにより、ブラウザがWebページをレンダリングするためのリクエスト数を減らすことができます。Webブラウザが同時に処理できるリクエスト数には限りがあるため、同時リクエスト数を減らすことができればその分読み込みが高速になります。

要するに、jsとかcssが、一つのファイルにまとめられており、サーバーで動作するときは、プリコンパイルされたファイルを読むことなる。
Herokuはproduction設定としてあるので、この条件に合致する。
しかし、最初の勉強の時は、引っかからなかった、それはなぜか?
kawahara-ci.hatenablog.com

手順を振り返る

第1章の時は、以下の順番で作業をしています。

  1. gemファイル編集
  2. bundle install
  3. rails server
  4. ソース編集
  5. gemファイル再編集
  6. bundle install --without production
  7. Herokuにdeploy

はまった時は、以下の順番で作業をしています。

  1. gemファイル編集
  2. bundle install --without production
  3. ソース編集
  4. Herokuにdeploy

なるほど!第1章の時は、ソース編集後に、 bundle install をしている!
だから、はまらなかった訳です。
deployする前に、 bundle install をすれば、いいんじゃないと思ったけど、問題はアセットパイプラインがプリコンパイルされていないだけなので、rake assets:precompile するのが正しいです。

Ruby on Rails 5アプリケーションプログラミング

Ruby on Rails 5アプリケーションプログラミング

M5Stackユーザーミーティング vol.1に参加しました

ユーザーミーティングに参加!

ブログ枠の参加じゃないですが、参加して良かったので、ブログを書きます。
前から気になっていた「品薄なM5Stack」を入手したのは先週の2018年5月8日でした。
kawahara-ci.hatenablog.com
そして、M5Stackユーザーミーティング vol.1に参加したいと思いましたので参加しました。
m5stack.connpass.com

色々な方と話が出来て楽しかったです

登壇者の多くの方々が口を揃えて言うのは、 開発がとても楽と言うことです 、M5のライブラリを使えば、文字表示や絵を描く程度なら、すぐに出来てします、そんな手軽さに、皆さんゾッコンです。
それから、IoTを長くやっている人曰く、今までのIoT機器は基盤むき出しが多く、M5Stackはケースに入っているので、気軽に人に渡せるのがメリットです。

登壇者のスライド

  1. M5 stack ug_vol1rev02
  2. M5Stack会場スポンサーLT、からのM5Stackまとめ - Speaker Deck
  3. 展示ごとでM5StackをMQTTで複数台連動させた話 - Speaker Deck
  4. こどもにやさしいM5Stack
  5. M5Stack meetup #1 2018/05/14
  6. M5Stack + NFC/Felicaモジュール - Speaker Deck

登壇者のGitHub

スターを付けましょう!
1. GitHub - meganetaaan/m5stack-avatar: An M5Stack library for rendering avatar faces
2. GitHub - n0bisuke/M5_Shuttle_Run: M5Stack向けのArduinoライブラリです。 シャトルランが出来ます。

以下ダイジェスト(自分のツイートのみ)

  1. 質疑応答は交流会で
  2. Jimmyさん、ありがとうございます
  3. エムファイブスタック(5を、ゴと読むのか、ファイブと読むのか)
  4. 温度センサーが付いてお得!
  5. M5Stack あるあるコーナー(うなづく人多し
  6. ディスプレイがあるのは重要
  7. YO(昔、アカウント作ったが消しちゃったよな)→ Yo
  8. かわいい
  9. 顔表示ライブラリ化→ GitHub - meganetaaan/m5stack-avatar: An M5Stack library for rendering avatar faces
  10. 迷子
  11. こどもにやさしい
  12. 周波数がちがう
  13. シャトルラン、ライブラリ化→ GitHub - n0bisuke/M5_Shuttle_Run: M5Stack向けのArduinoライブラリです。 シャトルランが出来ます。
  14. Jimmyさん神対応
  15. 音響測定器が必要だ
  16. ミミガー‎「ミミガー」をApp Storeで
  17. 校正器、なるほどわからん
  18. TFT_libraryを使った
  19. 物理的にスピーカーを殺す
  20. 中の人
  21. THETA→ 360度カメラ RICOH THETA
  22. モーションJPEG
  23. 最初に確認しましょう
  24. ガチな要望
  25. ファイブセンチ
  26. Tシャツ9枚じゃんけん大会

ツイッターまとめ

togetter.com

ブログ報告

takuwz.hatenablog.com
ahiru-sewingstore.hatenablog.com
www.1ft-seabass.jp

Tシャツはゲットならず

ジャンケン大会は負けましたので、悔しいのでTシャツの写真だけですwwwwww

次回

次回も参加したいです。
頑張って何か作って、LTを目指したいところです。


[rakuten:tsukumorobo:10011808:detail]

M5Stackで開発

習うより慣れろ

習うより慣れろ!と言うことで、せっかく購入したんだから、M5Stackで開発をします。
Pythonでも良かったのですが、C言語で開発しました。

開発2時間

サンプルを見ながら、キッチンタイマーを作りました。

正直、大したことしてませんし、参考になないと思いますが、ソースコードはこちらです。
github.com


M5Stack Faces(9軸IMU搭載、各種カバー付き)

M5Stack Faces(9軸IMU搭載、各種カバー付き)

  • メディア: おもちゃ&ホビー

[rakuten:tsukumorobo:10011808:detail]
[rakuten:tsukumorobo:10011810:detail]