私が歌川です

@utgwkk が書いている

Fitbit Charge 4を買った

blog.utgw.net

画面が暗すぎて心拍数も確認できなくなっていたので、Fitbit Charge 4を買ってセットアップした。付け心地はそんなに変わらない。

時間が確認できるようになって非常に便利。

「リーダブルコード」を読み直した

4年ぐらい前に読んだけど、図書館で借りたか売ってしまったかで手元になかったので、買い直して読んだ。内容としては大体納得できるけど、4年前に同じ本を読んだかどうかが怪しい。ちゃんと読めてなかったか、現実の例をいくつか見たので解像度が高まった?

空白を入れてコードを整形しましょう、みたいなことは、現代だとコードフォーマッタに一任すればよいと思う。そうすれば一貫性も担保される。コードを整形する根拠・狙いを分かっておくのはよさそう。

定期的にAPIドキュメントを読みましょう、ということが書いてあって、良い話だった。実装方針が分かってゴリッと実装してしまうけど、ライブラリを使えば同様の処理が1行で書ける、という場面はよくある。最小のコードで最大の効率を出すために、手数を増やすことを怠らないようにしたい。

本質的なことに集中できるようなコードを書けるとよい、という理解をした。そのための手段とか指針が示されているのが「リーダブルコード」という本なのだろう。あちこちのコードを読まないと本質を読み解けないようなコードになっているのと、本質的でない部分が適切に隠蔽されているのとは別だと思う。

全然関係ないけど、「本質だけが欲しいの それ以外はまやかし」みたいな言葉を聞いたことがある。何かの歌詞だと思うけど出典が分からないので、誰か知ってたら教えてください。

2021/5/16 18:49 追記

どうやら歌詞ではないことが分かった。

ピタゴラスの定理により、各色の面積はずっと同じ

↑を再現したくて失敗したけど諦めきれずに再チャレンジした。

blog.utgw.net

f:id:utgwkk:20210516022051p:plain
完成した

素朴に実装したら動作がめっちゃ重たく、ブラウザの反応が一瞬なくなったけど、 ctx.fillStyle への代入をできるだけ減らしたらすごく軽くなった。 requestAnimationFrame でアニメーションさせても平気。びよんびよんなって愉快。

gyazo.com

↓ここでアニメーションしてる様子を眺められる。コードはglitchに置いてあるので好きにremixできる。

Pytagorean squares

正方形の頂点の座標をコメントに埋め込んでいるのがみどころです。何度傾けたらよいのかも試行錯誤してて、全く計算が合わなくて大変だった。ここまで三角関数と向き合ったのはフーリエ解析の講義以来だと思う。

/*
 * (x-rsinθ, y-rcosθ) +-----+ (x+r(cosθ-sinθ), y-r(cosθ+sinθ))
 *                    |     |
 *                    |     |
 *                    |     |
 *                    |     |
 *                    |     |
 *             (x, y) +-----+ (x+rcosθ, y-rsinθ)
 */

これは図形の作り方を考えているときのスケッチ。左下の点から対角線に向かうのか、右下から向かうのか、みたいなイメージで実装したらできた。座標軸の向きがちょっと違ったり、回転させるのがうまくいかなかったりして大変だった。

f:id:utgwkk:20210516022800j:plain

canvasの最適化の方法はMDNに書いてある。 けど ctx.fillStyle に代入するのが明らかに支配的だったので、まずそこを見直すのがよいと思う。

developer.mozilla.org

2021/5/16 11:05 追記

この図形にはピタゴラスの木という名前が付いていることを知った。

ja.wikipedia.org

blog.utgw.net

このときバンドを買い替えたFitbit Charge3をずっと使っていたのだけれど、画面がぼやけていることに気づいた。とくに上半分が暗くて、現在時刻を確認するのが困難な状態になっている。心拍数ははっきりと確認できる。腕時計だと考えると極めて致命的な状態である。

このFitbit Charge 3は去年の10月に買ったもので、1年以上持って・保っていることになる。

■ - 私が歌川です

ヨドバシで2019/10/23に買ったので、1年半ぐらい使っていたことになる。価格.comのレビューを確認すると、まさに同じような状態のものが見つかった。寿命が来たのであろう。半年ぐらい付けずに過ごしていた時期があったけど、そういうものかな。

一度の充電で一週間もつのはとても良かったが、一年半で画面が暗くなりだし、一週間ほどで画面が表示されなくなった。寿命が短すぎる。

価格.com - 『寿命短すぎ』 Fitbit Charge 3 タカタカタカタカターさんのレビュー評価・評判

順当にいくとFitbit Charge4を買うことになりそう。