bouzuya.hatenablog.com

ぼうずやのにっき

2018-W02 ふりかえり

2018-W02 をふりかえる。

2018-W02 の目標 とその記事

目標。

  • ☑ bouzuya/screenshot-testing-js の 0.1.0 をつくる
  • ☑ 『新しいシェルプログラミングの教科書』を読み進める

記事。

bouzuya/screenshot-testing-js を 0.1.0, 0.2.0, 0.3.0 と進めてきた。試しに bouzuya/bbn-screenshot-testing という blog.bouzuya.net を撮るプロジェクトで軽く使ってみた。もうすこし CSS の変更をしつつ……みたいな開発の流れの中で使ってみないとなんとも言えない。

『新しいシェルプログラミングの教科書』を読み進めている。来週で読み終わる予定だ。

自作キーボードに向けて進んでいる。スイッチとキャップが届いたことで、その気になってきている。 QMK のソースコードを読んだり、 オリジナルキーボードを作ってみる まとめ - ゆかりメモ を読んだりして準備を進めている。

つくったもの

2018-01-08/2018-01-14

よんだもの

なし。前述のとおり『新しいシェルプログラミングの教科書』を読み進めている。『ゲーデルエッシャー、バッハ――あるいは不思議の環』はほとんど進んでいない。

みたもの

その他

成人の日があったことや、ぜんそくの発作っぽかったので通院したこともあって、短い一週間だった。頭痛もあったり、体調的には優れなかったものの、プログラミング・読書・その他をバランス良く進められている。

その他として 2018-01/2018-03 目標の自作キーボードの件を進めている。 Nyquist のキットを注文し (2018-01-09) 、 スイッチ・キャップを注文し (2018-01-10) 、記事を読んで情報を集める (2018-01-13) などしている。

今日は Let's Split のキーキャップを、届いたキーキャップに差し替えてみた。届いたキーキャップは DSA のもので、いままでの DCS のものとは形状が違う。とりあえずは使えるのだけど、ぼくは DCS のほうが好きかもしれない。しばらく様子をみてみる。見た目については関心がないのだけど、形となると使い勝手に影響しそうなので、気になる。

2018-W03 の目標

  • bouzuya/screenshot-testing-js の 0.4.0 をつくる
  • 『新しいシェルプログラミングの教科書』を読み終える
  • QMK の nyquist を読み進める

1 キーキーボードをつくった

TALP KEYBOARD でキースイッチとキーキャップなどが届いた。まだ PCB などが届いていないのでつくれないだけど、準備をはじめている。

オリジナルキーボードを作ってみる まとめ - ゆかりメモ の記事などを読んでいる。

オリジナルキーボードを作ってみる その5「とりあえず1キーキーボード」 - ゆかりメモ を見ながら、 1 キーキーボードをつくった。 2014-09-232014-10-05 に書いた Arduino Micro をひっぱり出してきた。「ああ、持ってたわ」って。 2017 の間にも気づいていた (書いたと思ったけど検索しても出てこないのでおそらく書いていなかった) のだけど、自作キーボードの関連で Arduino 云々という触れたことのある場所に戻ってきていて、意外と繋がるもんだと思っている。


bouzuya/screenshot-testing-js の 0.3.0 をつくった。 report オプションを追加した。これで任意のレポートを追加できる。いまの HTML のためのレポートを別の npm パッケージに切り出すかもしれない。まだ API が安定していないので、しばらくは出さないほうが良さそうだけど。

毎回 open を実行していたのを、 htmlReport({ open: 'failed' }) のように失敗時だけの表示やまったく表示しないように設定できるようになった。


『新しいシェルプログラミングの教科書』を 7 章まで読んだ。

それぞれの章のタイトルは展開とクォーティング、制御構造、リダイレクトとパイプだ。どれも知らない機能はあったが、展開は特に知らないものが多かった。

2018-01-11 で書いたことをまだ考えながら読んでいる。機能を知るべきだとは思うが、果たして使うべきだろうか、と。読めることは良いことだが、書く (使う) べきでない機能のほうが多いのではないか……。何にせよ、読めることは良いことだ。


映画『イヴの時間 劇場版』を観た。 Amazon で観た。プライム会員限定の商品を買うために、ついにプライム会員となってしまったので、せっかくだからと。

bouzuya/screenshot-testing-js 0.2.0 をつくった

bouzuya/screenshot-testing-js の 0.2.0 をつくった。

node-compare-images を 0.2.0 に変えた。これにより不一致の際にすべてのピクセル数および不一致のピクセル数を得られるようになった。

それらのピクセル数から不一致率を計算できるようにした。この結果を表示するために image / stats を切り替えて表示できるようにした。ほかにも大きい画像を表示した際に崩れるのを直した。

bouzuya/bbn-screenshot-testing に screenshot-testing-js を反映した。今日はここまで。


残業。本を読めていない。明日は読もう。

映画『ゲド戦記』を観た。もっとはきはきと喋れよ、ちゃっちゃと動けよってなる。

『新しいシェルプログラミングの教科書』を読んでいる

『新しいシェルプログラミングの教科書』を読んでいる。いまは 4 章かな。配列が出てきたあたり。

恥ずかしい話だが、ぼくはシェルスクリプトをほとんど書けない。単純にコマンドを並べて iftest を並べるくらいならもちろんできるのだけど、配列がどうとか言われるとよくわからない。空白がどう解釈されるのかいまだによく分からないし、 $*$@ なども何が起きているのかよく分からないので使わない (使うときはいつも検索して試したりする) 。

そろそろ、さらっと使いたいところだ。……だけど、ぼくが書けても他の人が読めないとかに陥りそうなので、うーんって感じだ。自分で書いていて、普段の「自分の知らない言語機能を禁止するのをやめろとか言っちゃうような」姿勢と矛盾しているので、良くないな。良いものはまず自分が使えるようになって広めていこう。……でも、シェルスクリプト (しかも bash 前提) はなあ……。


bouzuya/node-compare-images の 0.2.0 をつくった。すべてのピクセル数・不一致のピクセル数を返せるようにした。

bouzuya/screenshot-testing-js は node-compare-images を 0.2.0 に変えて、大きい画像の表示で崩れるのを直した。不一致のピクセル数を表示できるようにしようとしている途中だ。


寒い。そして頭が痛い。

TALP KEYBOARD でキースイッチとキーキャップを買った

昨日 (2018-01-09) は KeebioNyquist Keyboard の Kit を買った。そして今日は TALP KEYBOARD でキースイッチとキーキャップを買った。これで一式そろうはずだ。思ったよりは簡単にそろったのでは。ああ、工具類は Amazon で買った。

あとはつくるだけ。つくってみて足りないに気づくとかもありそう……。 2018-03 までに自作キーボードな人になれるだろうか……。不器用さを発揮してデビューに失敗しそう。


bouzuya/bbn-screenshot-testingbouzuya/screenshot-testing-js を試している。

0.1.0 は package.json に誤りがあって、まったく動かなかった。あとは必要な型が export されておらず、困った。

上記を修正して 0.1.1 にした。それでも使い勝手がいまいちだ。特に致命的なのは、おそらく数 px の微妙な違いを差分 (失敗) として認識してしまっていること。大きい画像がはみ出たりするのも分かった。

どんどん直していく。


ゲーデルエッシャー、バッハ――あるいは不思議の環』を数ページだけ読んだ。↓の本を読みはじめたので、今後も進まないだろうな。

もともと予定していた『新しいシェルプログラミングの教科書』が手に入った。こちらを読みはじめた。 2 週間ほどで読み切りたい。


午前中は通院でお休みした。薬を処方してもらったので、気休め程度かもしれないが、使っていく。

自作キーボード Advent Calendar 2017 を読んだ

自作キーボード Advent Calendar 2017 をひととおり読んだ。みんないろいろやっているもんだなあ。

ぼくは QMK Firmware でキーレイアウトをいじってキー数を 36 まで減らしたことくらいかな。自作感が弱い。

そして KeebioNyquist Keyboard の PCB などを購入した。届くのが楽しみだ。キースイッチが品切れで買えなかったのとキーキャップは購入できないので、ほかから調達しないといけない。


朝寝坊したので bouzuya/screenshot-testing-js はほとんど進まず。 1 commit をごまかし的に。


息苦しさで眠れないので (それを寝坊の言い訳にしている) 、明日は病院に行く。

財布に入っていた去年の大吉のおみくじを捨て、今年の小吉のおみくじを入れる。

bouzuya/screenshot-testing-js の 0.1.0 をつくった

bouzuya/screenshot-testing-js の 0.1.0 をつくった。

screenshot-testing-js はヘッドレスブラウザで撮ったスクリーンショットの差分を確認することでテストするためのツール。 Puppeteer と bouzuya/node-compare-images を使っている。

とりあえず 0.1.0 にして npm:@bouzuya/screenshot-testing として公開した。まだ試していないので使えるのかよく分からない。

既にいくつかの課題はある。

CI 対応。強制で html を open するのだけど、 CI で動かす際には邪魔そう。このあたりの report 設定も必要そうだ。

1px だけの差分でも失敗扱いになる。また、その時の差分が画像だけだと細かすぎてよく分からない。数値で何 % 違うのかがほしい。 Huddle/Resemble.js で言うところの misMatchPercentage かな。しきい値を設定して、それ未満を成功と見なせると良さそう。

シナリオを書くための補助も少ないので、試しながら足していきたい。


ゲーデルエッシャー、バッハ――あるいは不思議の環』をすこしずつ読んでいる。まだ冒頭だけど面白い。思いのほか読みやすい。途中から内容が重くなったりするのかな……。たぶん途中で返さないといけないのだけど、読めるだけ読む。


Twitter にも書いたけれど、 自作キーボード Advent Calendar 2017 を何日分かだけ読んだ。

1 日目の 自作キーボード 部品購入ガイド を見て、 Nyquist に手を出してみようかという気持ちが……。本当は Helix (薄いの) が欲しいのだけど、ちょっと Group Buy のタイミングを逃してしまった。とりあえず何かひとつでもつくって、練習、そしてこの四半期の目標を達成していきたいところだ。

呼吸が苦しい。寝ている間に呼吸できなくなって死んだら嫌だな。寝ている間の呼吸困難って目が覚めるのかな。なったことないから分からない。呼吸が苦しいとまず寝られないからな……。