ユーレックスのオイルヒーター RF11ES を買ってみた

eureks.co.jp

買ったのは、1月8日あたり。大体2週間くらい使ってるけど、なかなか良い。

オイルヒーターの評価をみると、暖かい・暖かくないという意見が入りまじっていて、すこし不安だったけど、いまのところ十分に暖かくて買って良かった。

即暖性が低くて風通しの良い場所ではあまり効果がないとか、住宅環境に左右される感あるので、こう意見が入りまじっているのかなと感じた。
いま住んでいる部屋は気密性が高くて、8畳くらいの大きさなので、良い感じに効果がでているのかもしれない。

エアコンを使っていたときは、暖まりが悪いうえに乾燥してツラかったし、指先が寒くて PC を触るのもツラかったので、本当に買って良かった。

問題は電気代。エコ運転でも大体1時間に15円くらいかかるらしい。
寝るとき・外出するときは消すようにしていて、帰宅時間の1時間くらい前から運転を開始するようにタイマー設定する運用をしている。
のだけど、寝るときに消すのをしばしば忘れる。音がしないし、点けてること自体を忘れる。
RF11ES は何時間後に点ける消すといった設定しかできないけど、もうワンランク上の RFX11EH は何時から何時まで点けるといった細かい設定ができるので、こちらを買った方が良かったかもしれない。
数千円をケチった結果、電気代で損をしそうである。

ところで、買ったあとに知ったのだけど、オイルヒーターの次世代版ともいえるスマートヒーターとやらもあるらしい。
バルミューダ | SmartHeater2(スマートヒーター2)| 睡眠のための、まったく新しい暖房
お値段3倍くらい違うので買えないけど、即暖性の低さが解消されていたりスマホから操作できたり、とても良さそう。

Go 1.6 で HTTP Request Context

Go 1.6(for Google App Engine)で、Go 1.7 の HTTP Request Context のような事をするメモ。

golang.org/x/net/context だけでいけるかな〜と思ったけど、そんなわけなくて、ゴリラ系のフレームワークを使った。

フレームワーク

なるべく簡素にしたいし、http.Handler をそのまま使いたかったので、以下を選択。

gorilla/contextHTTP Request Context の代替です。
リクエストオブジェクトをキーにして値をグローバルな変数に保管する的なことをしている。

自前のミドルウェアを用意して、リクエスト毎に値を保つコードを書くとこんな感じ。

import (
    ...
    "github.com/gorilla/context"
)

...

func MyMiddleware(w http.ResponseWriter, req *http.Request, next http.HandlerFunc) {
    bag := &ExampleBag{}
    context.Set(req, "contextKey", bag) // http.Request毎に保管する
    next(w, req) // MyHandler 呼び出し
    context.Delete(req, "contextKey")
}

...

func MyHandler(w http.ResponseWriter, req *http.Request) {
    bag, ok := context.Get(req, "contextKey").(*ExampleBag)
    ...
}

Go 1.7 > では

func MyMiddleware(w http.ResponseWriter, req *http.Request, next http.HandlerFunc) {
    bag := &ExampleBag{}
    ctx := context.WithValue(req.Context(), "contextKey", bag) // req.Context 便利
    next(w, req.WithContext(ctx))
}

...

func MyHandler(w http.ResponseWriter, req *http.Request) {
    bag, ok = req.Context().Value("contextKey").(*ExampleBag)
    ...
}

番外

Go 1.7 になったら、下記フレームワークに置き換えたい

builderscon tokyo 2016

builderscon.io

参加してきました。

Opening

来年も開催することが発表されました。
2.5 days やるそうで、都合があえば是非また参加したい。

OSS は Windows で動いてこそ楽しい

OSS は Windows で動いてこそ楽しい - builderscon2016
生 mattn さんのお話。
動かないものを動かしてそれで皆がわーっと喜んでくれるのが嬉しい、動かないものを動くようにするのが好きと仰っていて、とても共感した。
時間は、がんばって捻出するしかないそうなので、がんばろう。

動け!Golang 〜圧倒的IoTツール開発へようこそ〜

IoT製品の生産でIoTする #builderscon / Akerun Advent Calendar 3日目 - 僕のYak Shavingは終わらない
普段触れることのない分野。
工場って発注したら後はお任せみたいなイメージだったけど、作業者用のツールを作っていたり、わりと融通(?)がきく感じなんだなと思ったりした。
モノづくりをしている感があって、とても楽しそう。

Automatic Smile Camera を作った話 - 親バカハックノススメ

Automatic Smile Camera @ builderscon // Speaker Deck
赤ちゃんかわいい。
定点盗撮を3日間して1枚という結果だけど、赤ちゃんって何もしなくて笑うものなのかな?
親バカへの道のり、まず出会いから求めなくてはいけなくて、とてもとおい。

人工知能によってプログラムを有機化する

Builderscon 2016 講演資料 「人工知能によってプログラムを有機化する」(前篇)
Builderscon 2016 講演資料 「人工知能によってプログラムを有機化する」(後篇)
凄いボリュームで、むちゃくちゃ濃い話だった。
AIには、知識と思考という視点があって、初心者は思考から作ろうとしがちだけど、それは大変。
静的に用意したAI(Scripted AI)から自立型AI、そして生成型のAIへ。
オープンワールドなゲームでは、プレイヤーが暇そうにしていたら、プレイヤーの経路を予測して、その先に動物と村人の皆さんを配置して戦わせたりしてイベントを動的に作るとか。
ゲームの中にも演者(出番待ち)の皆さんがいるのか…という気づきがあったりして、とても面白かった。

一から始めるJavaScriptユニットテスト

一から始めるJavaScriptユニットテスト - Hatena Developer Blog
すごく分かりやすかったので、後でまた必ず読み返す。

Bluetooth キーボードの作りかた

builderscon tokyo 2016 で「 Bluetooth キーボードの作りかた」を喋りました | tech - 氾濫原
ちょうど左右分割キーボードが気になっているところだった。
しかし自作すごい。
同コストなら自作した方が知見も手に入るという考え方、百里ある!