bouzuya.hatenablog.com

ぼうずやのにっき

android-beacon-library のドキュメントを読む

AltBeacon/android-beacon-library のドキュメントを読んでいる。

Android で BLE: Bluetooth Low Energy を……ということを先週・今週で何度か書いている。BLE Beacon を使おうと思っている。 Android 4.3 以降はサポートされているからと実装をはじめたところ、バージョンごとや仕様ごとの対応が面倒そうなので、ライブラリを使うことにした。

で、いまは上記のドキュメントを読んでいる。ざっと目を通した。明日から書く。

『怪盗グルーのミニオン危機一発』を観た / Android で BLE

『怪盗グルーのミニオン危機一発』を観た。

2017-04-17 に書いた『シング・ストリート』のときと同様に iTunes で 400 円でレンタルした。この間のが 500 円だったので 100 円あまった。

字幕で観たかったのだけど、間違えて日本語吹き替えにしてしまった。CV:笑福亭鶴瓶だ。

一作目のほうが単純な話で良かったなあ。あと「ルーシー・ワイルド」があんまり好きじゃない……。


Android での Bluetooth Low Energy 利用を試している。

BLE Device の scan で Permission まわりでエラーになった。よく見ると Bluetooth Low Energy | Android Developers にきちんと書いてあった。

次の記事でそのあたりの話題を追っていたので参考になった。

device の scan には位置情報を取得する権限が manifest.xml に必要だし、ぼくの実機 ZenFone 3 (Android 7.0) だと requstPermissions も呼ばないといけない。

明日には何かができるかな。

bouzuya/gh-repos-rs をつくった

bouzuya/gh-repos-rs をつくった。

gh-repos-rs は GitHub の自身のリポジトリを一覧表示するアプリケーション。

なんでもいいから Rust でつくらないと区切りをつけられないのでつくった。 GitHub API を呼び出して JSON から名前を抜き出して標準出力しているだけのもの。相変わらずいろいろなところで .unwrap() している。

2017-W17 の目標 で書いたように、今週もまた Android のトレーニングを進めないといけないので……。


今日は午前中にお休みをとって、腰のことで病院へ。「あなたは股関節がかたい」とみんなに言われる罰ゲーム。

bbna: blog.bouzuya.net for Android 1.1.0 を公開した

bbna: blog.bouzuya.net for Android の 1.1.0 (beta) を公開した。昨日 (2017-04-23) の記事に書いたとおりだ。

1.0.0 (beta) からの変更点は次のとおりだ。

  • アイコンを変更しました
  • ActionBar の色を変更しました
  • ActionBar に一覧ページへ戻るボタンを追加しました
  • スワイプで個別の記事ページと一覧ページを切り替えられるようになりました
  • 個別の記事ページの表示が早くなりました
  • Toast を Snackbar に変更しました

ぼくはスワイプでの一覧詳細の切り替えと読み込みの高速化がうれしかった。

実装としては GitHub を見てもらえば分かるのだけど、2 Activity から 1 Activity (2 Fragment) への変化がもっとも大きい。 ViewPager によって Fragment を左右に並べている。

しばらく使ってみて気になったことをいくつか挙げておく。

  • ある記事から次の記事への移動に一覧を介さなければならない
  • 一覧の再読込が再起動でしかできない

他の課題は昨日 (2017-04-23) の記事に書いたとおりだ。

細かい操作性の向上のほか、 BLE: Bluetooth Low Energy や Notification などを試していきたい。

使ってみて気になる点があれば、 GitHub の Issue に登録してほしい

2017-W16 ふりかえり

2017-W16 をふりかえる。

2017-04 の目標

2017-W16 の目標

  • ☑ 『 CSS フレンズ』のことを書く
  • ☑ 『シング・ストリート』のことを書く
  • ☐ Rust で何かをつくる
  • ☑ bbna 1.1.0 を公開する
  • ☐ 『アンダースタンディング コンピュテーション』を進める

Rust の分はすこしだけつくっている。 blog には書いていないけど、結構ハマっている。また書く。

bouzuya/bbna は今日のもくもく会のあとに公開したので、まだ blog に書いていない。また書く。

今週の記事

『神戸 Rust の会 #2 』 (2017-04-19) に向けて Rust のドキュメントを読んだ (2017-04-18) 。また『神戸 Rust の会 #2 』を受けて Rust で何かをつくろうとしている (2017-04-20 以降) 。

土曜日は妻とのおでかけ。今回は京都へ。北野天満宮金閣寺などをまわった (2017-04-22) 。

つくったもの

2017-04-17/2017-04-23

前述のとおり、 bbna: blog.bouzuya.net for Android の 1.1.0 (ベータ版) を公開 した。

Rust は練習中。

その他

「今週の記事」でも書いたとおり、今週は Rust に時間を割いた (2017-04-18 / 2017-04-19 / 2017-04-20 / 2017-04-21) 。ドキュメントを読み、量的にはわずかだが書いてみた。ぼくは C++ に馴染みがないので、「所有権」の考え方は新鮮だ。 C はすこしだが書いていたので、ヒープやスタックなどメモリを意識させてくる感じは懐かしい。

逆に時間を避けていないのは『アンダースタンディング コンピュテーション』だ。先週 (2017-04-16) も同じことを書いた。気持ちは先々週 (2017-04-09) に書いたとおりだ。ただ Rust と『アンダースタンディング コンピュテーション』はどちらも、ぼくにとって基礎力の向上を目指した枠だと思っている。このふたつが時間を奪い合うことについてそこまで問題視していない。方向が違うので、迷うところではあるけれども……。

日曜日をあてた bbna (Android アプリ開発) はやりたいことではなく、やらないといけないことだ。時間を割きたくはないのだけど、割かざるをえない。細かい操作性の向上のほか、 BLE: Bluetooth Low Energy や Notification などを試していきたい。

ゲームは『スーパーマリオ ラン』をまだ遊んでいる。キノピオはトータル 9999 になったが、一部の色のキノピオが足りないため、まだ一部の建物を購入できない。

2017-W17 の目標

  • ☐ bbna 1.1.0 のことを書く
  • ☐ 2017-04 のふりかえりを書く
  • ☐ bbna 1.2.0 をつくる
  • ☐ Rust で何かをつくる
  • Android で BLE をためす
  • ☐ 『アンダースタンディング コンピュテーション』を進める

北野天満宮の青もみじを観た

今日は妻とふたり、京都への小旅行。

北野天満宮の御土居 (おどい) の青もみじを見に行った。

今回のきっかけはマイフェバの特集 Vol.145 にあった写真だ。それを見て、行くことにした。

青もみじは青かった。正確には緑か。日差しで黄色っぽくなる感じや、木漏れ日、赤い橋と緑の対比などが良かった。

青もみじの入場券 (500 円) は宝物殿の入場券も兼ねていたので、合わせて宝物殿も見た。鬼切丸とかいう刀が飾ってあった。貴重なもので明日には場所を移動されてしまうらしい。まったく興味がないので、ほかの刀との区別はつかなかった。

妻が「金閣寺を見たことがない」と言うので、北野天満宮のあとは金閣寺へ向かった。相変わらず金ピカで人が多すぎてうんざりした。

お昼には坦々うどんを食べた。基本的には担々麺で、麺がうどんになっている。豆乳を入れてあるのか、ややマイルドな感じだ。うどんにする意味がよく分からない。

土産のために京都駅内の辻利を探してさまよった。これがひどく疲れた。

帰りにヨドバシでキーボードのスイッチを試してきた。このあたりは後述する。

いつものことだが、疲れた。


ErgoDox EZ を注文した。送料込みで $325 USD 。だいたい 35,000 円くらい。

去年に流行っていた (?) ErgoDox をいまさら買うことにした理由は腰痛だ。ツイッターにも書いたが、↓のような考えからだ。

上記の条件を満たすもので、パッと思いつくのが ErgoDox くらいだったので、それに決めた。

ErgoDox 自体はいろいろ Open らしいが、わりとどうでもいい。完成したものが ErgoDox EZ という形で売られているらしい。「ああ、もう、それでいいよ」って感じだ。

ErgoDox EZ は購入時にスイッチとして Gateron (Cherry MX 互換) のものを選択できるようになっている。 Cherry MX と言われても、ぼくは高校くらいからずっと Realforce or ノートパソコンの付属キーボード (前職を含めて) を使っているのでピンと来ない。そこでヨドバシで軽く触ってみることにした。ここで京都旅行の帰りとつながる。

結論としては Gateron Red にした。 Cherry MX を触ってみたところ、赤が良さそうに思えたからだ。

軽く触っただけの第一印象なので、ぼくに最も適しているとまでは言い切れない。「がんばれば換装もできそうなのでとりあえずはこれでいいや」という安易な決定だ。

キーの印字は不要なので Blank 。汚れが目立つと嫌なので Black 。スイッチは前述のとおり Gateron Red 。

あとはメールだかに一ヶ月くらいかかると書いてあったので、楽しみに待つ。

Rust 練習中

bouzuya/rust-example にすこしだけ変更を入れた。

std::env::var環境変数を取得できた。なぜか vars 使っていたのを修正した

String ではなく url::Url を使うように修正してみたhyper がよしなにやってくれるので、別に使わなくてもいいのだけど、勉強のために。

独自のエラーを enum で定義してみた 。直和型。

xml-rsXML を parse するようにしてみた。わりと生っぽい操作でわりとつらい。

とりあえず Cargo.toml[dependencies] に何かを追加する抵抗はなくなってきた。 git 経由からの取得などは試していないので、使いこなしているわけではないけど。素朴に crates.io から取得する分には平気だ。

まだ、それほど Rust のつらみを感じていない。