The paradigm shift

saboyutaka’s diary なんかかく(ブログn回目)

Railsを学ぶのに必要な最低限の知識

f:id:saboyutaka:20161022115607p:plainって何が必要だろうと思って思いついたやつを羅列してみる。 Railsを理解する前にWebアプリケーションやWebの仕組みをざっくり理解するとRailsを学ぶにあたって役に立つと思うのでおすすめ。

Webアプリケーションに必要な事

  • Webアプリケーションとは
  • Webの基礎知識
    • HTTP
      • GET, POST, PATCH, DELETE
      • URL
      • RESTful API
      • request
        • header
        • parameters
      • response
        • HTTP STATUS
        • HTML
        • JSON
    • TCP/IP
      • hostとport
      • well-known port
  • セキュリティ
  • リレーショナル・データベース
  • ブラウザ

Macでの開発で必要な事

RailsでWebアプリケーションを書くのに必要な事

Webアプリケーションに必要な事はRuby, Rails以外(PHPやNode.js, Perl, Python, Javaなどなど)で書く場合にも必要な知識です。 これらが何のために使われてて何が嬉しいかが少しでも理解出来てるとRailsがやってる事が少し理解できそう。

ノマドなみなさん、ワイヤレス診断使ってますか

カフェなんかでWifiを使う時に複数wifiがあってどれが一番速いんだろって時どうしてますか。 全部接続して速そうなやつ使ってますか、そうですか。

Macにワイヤレス診断って便利なのがあるので使ってください。

f:id:saboyutaka:20160128144609p:plain

使い方

f:id:saboyutaka:20160128144629p:plain

  1. メニューバーのWifiアイコンをOptionキーを押しながらクリックするといつもより詳細な表示が出ます。
  2. "ワイヤレス診断"を開く をクリック f:id:saboyutaka:20160128145158p:plain

  3. すると ワイヤレス診断のダイヤログが出ます。けどこれは無視でいいです。メニューバーから ウィンドウ > スキャン を選択します。(⌘+4 のショートカットキーでもいいです) f:id:saboyutaka:20160128145258p:plain

  4. スキャンの画面が出ました。ここを見ます。

主に見る項目

ネットワーク名

表示されてるSSID

プロトコル

802.11みたいなやつ。ざっくり言うと ac > a/n > b/g/n 順に良い。

ac は比較的最近の技術でこのwifiルーター使ってるところは新しいルーターを使っているということなのでちょっと評価して良い。 簡単にいうとacだとMacの通信が速い。

RSSI

wifiのアクセスポイントとの電波強度。主にここを見る。数値は-で表示され、この数値が低ければ低いほど電波強度が強くwifiにつながりやすい。

バンド

プロトコルによって2.4GHz か 5 GHz が使われる。2,4GHz帯だと電子レンジと似た周波数なため電子レンジが稼働すると繋がりにくくなる。 (よく行くカフェはお昼時は電子レンジが稼働してつながらなくなるのがこれでわかった。)

ざっくりつながりやすいwifiはどれ

  • RSSIの数値が低いやつ
  • RSSI が同程度ならば ac > a/n > b/g/n 順に良い。

私からは以上です

Fitbit Flexを購入してHealthkitの連携した

Fitbit Flexを購入した

f:id:saboyutaka:20160117191532j:plain

Fitbitとは

アクティビティ記録デバイスなどの情報が得られる Fitbit オフィシャルサイト

Niki Fuel BandやApple Watchのようにアクティビティを取得してデータ化し、視覚化する事が出来る。

Fitbit Flexには

  • サイレントアラーム
  • 歩数トラッカー
  • 睡眠のトラッカー

など。上位機種(Charge HRなど)は脈拍も取得可能。

比較はこちら

www.fitbit.com

なぜfitbitを買ったか

これまでにNike Fuel Bandを2世代使っていたので前々からアクティビティを取ることはやってた。 だけどFule Bandは使い始めて半年後くらいに壊れて、2つともダメになってしまった。 運動を視覚化するとちゃんと運動しないとなぁとか思うので結構良い。しかしウェアラブルデバイスの弱点は耐久性が低いことにあると思う。

flexを選んだ理由

悩んだのはFlexCharge HRだった。 ZipやOneなどはポケットに入れるタイプだがポケットに入れる系のものは絶対になくすのでそもそも選択肢にない。 Charge買うぐらいならChargeHR買う。SurgeやBlazeは高機能すぎて必要ない。 なのでFlexかCharge HR。

エンジニアとしては脈拍を常時取得できるCharge HRなんかは気になる。 だけど脈拍が運動したいという気分になるかというとあまりそんな気はしていなくて、あの時高かったんだなぁというデータにしかならないかなと思った。 flexが9000円くらいでCharge HRが19000円くらい。脈拍を取るために1万円多く払うのにちょっと躊躇した。

またFuel Bandからの教訓で求めるのは耐久性と正確性。Charge HRはリストバンドそのものが本体に対して、Flexは本体は中のデバイス。リストバンドはシリコンラバーなので傷が目立ちにくい。また本体がシリコンに守られているので衝撃にも強いのではと思った。

取り出して見た図

f:id:saboyutaka:20160117201614j:plain

ここにはめ込んでいるだけ

f:id:saboyutaka:20160117201636j:plain

またシリコンのリストバンドが特別に機能があるわけではないので、リストバンドが消耗した場合Amazonでも買えるみたい。 サードパーティ製のもあるっぽくて良さそう。 www.amazon.co.jp

またもし壊れたりなくした場合でも9000円だとまた出して買ってもいいかなと思えるけど19000円は次買うのに躊躇するなと思った。

fitbit を長く使ってるエンジニアの先輩の@hmsk さんに聞いてみた所そんなに壊れやすいものでもなさそう。

結果Flexを選択した。

flexを使い始めて

歩数やスリープトラッカーの取得制度が結構正確

  • 仕事でPC作業してる時などにつけっぱなしで仕事してるけど歩数が増えてない。歩いていない時をちゃんと区別して計測してていい感じ。
  • スリープトラッカーが寝てたら自動でログを開始して、動き始めると終了する。この精度がけっこう優秀。

ちゃんと運動をDriveしてる

つけ始めて歩くことを意識するようになったし、ちょくちょくAppを見るようになってる。まぁ買ってすぐなのですぐ飽きるかもしれないけど。。今のところは。。w

今のところ満足度が高い。

充電する頻度もそんなに多くなくてもよいし、つけててもあまり気にならないので毎日つけれる。

友人とのチャレンジがおもしろい。

何がきっかけでFitbitが流行ってるのかわからないけど、自分の周りにFitbitを購入した人が1ヶ月の間に6人くらいいる。 その人達とチャレンジ(期間を設けて歩数を競う)をすると結構おもしろかった。

Healthkit、Withingsとの連携

iPhone, iOSのHealthkitを使うことで他のHealth系Appと連携することが出来る。Fitbitは公式ではAppleとの提携をやめてしまったみたいだけど、FitbitはAPIがしっかりしてる。API最高!! なのでFitbitのAPIを叩けばHealthkitと連携することが可能。

自分はSyncSolverというAppを購入し連携することにした。 Healthkit to Fitbit と Fitbit to Healthkit が分かれているみたいなので両方購入した。

Sync Solver for Fitbit

Sync Solver for Fitbit

  • James McAndrew
  • Health & Fitness
  • $2.99

Sync Solver - Health to Fitbit

Sync Solver - Health to Fitbit

  • James McAndrew
  • Health & Fitness
  • $2.99

脈拍は別のAPIらしくて対応してるアプリはない?or少ない?、flexでは脈拍取れないので関係なくあまり調べてない。 SyncSolverではここを見ると対応していないのがわかる。

自分のHealthkit連携環境

f:id:saboyutaka:20160117202339p:plain

Withingsの体重計で

を取得し、Healthkitと連携している。 体重計には毎朝乗って自動でWithingsアプリに連携される。

これをSyncSolverを使ってHealthkitからFitbitに連携する。

f:id:saboyutaka:20160117201309p:plain

できた。

これでHealthkit, Fitbitで

などが見れるようになった。

まとめ

Flex買ってよかった。やはり数値化されるとやる気出ますね。数値化したりAPI触ってみたりはやはりエンジニアからすると面白い。 体重74キロスタートで70キロくらいに戻したい。 今年こそはヘルシープログラマーを目指したい。

1週目は結構頑張って運動できたのでこれを継続していきたいですね。。

おわり

p.s.

fitbit 買って友達になりましょう!