月報 2022/03

Wed 02 Mar 2022

23:46:02

Tue 08 Mar 2022

01:41:28

インターネット、電話、左翼思想

16:35:18

Wed 09 Mar 2022

12:24:23

Thu 10 Mar 2022

23:11:31

ずっと放置してたのだが, カメラ (x100f) の修理依頼を出した. フォーカスモードをこのカメラは物理スイッチで切り替えるのだが, MF にしても MF にならない. その気になれば AF モードでも MF みたいなことはできるのだが, 気をつけないと勝手にフォーカスを変更するのでやっぱり不便だ. 修理は電話かインターネットに申し込むのだが, インターネットで申し込もうとすると Google Form だった. ここで壊れてる内容を書くのだが, 改めて精査すると, ファインダーが光学モード(ガラスで素通しに見るだけのモード)に切り替わらないという問題を見つけた. 普段は液晶表示しかしてないからなぁ. 8日に突然日通がやってきて何事かと思ったら, 梱包用のダンボールだけを持ってきて, カメラを引き取っていった. 二日後の今日の朝メールが来ていて, 修理にかかる費用を知らせてきて, このまま修理にすすめるかどうかを聞いてきた. 本当は値切りたかったが, 進めてもらった. 一万二千円にしっかり消費税が載せられた.

Sat 13 Mar 2022

夢日記。将来はシャチに飲まれて死にたい話をした

映画「牛久」を見た. 感想は ここ に書いた. 間違えてもメジャーな上映なんてされないタイプの映画なので, 都内でも渋谷の小さな劇場一ヶ所だけで上映されていた. 鳴り物入りで上映された大きな映画が, 例えば最初の週のある一回だけ, 上映終了後に監督が来て出演俳優たちがやって来て舞台挨拶をするなんてあるが, なんとこの映画は毎週土日の夕方は毎回上映後に監督と配給会社の人がやってきて舞台挨拶という名の「質問タイム」が始まる. こういう場でぱっと面白い質問を私はいつも思いつけないので, 苦しい気持ちだった. 小さな小さな劇場なので途中で抜け出すなんてことももちろん出来ず, 時間一杯の質問タイムをただじっと黙って終わるのを待つだけだった.

Tue 15 Mar 2022

13:52:53

FFFTP は FTPS をサポートしていて, FTPS は SFTP とは別物

14:26:25

苦というのは薄く伸ばせば飲み干せるというものではなく, 案外, 煮詰めて煮詰めて少量にすると勢いで飲めてしまうものだ.

20:17:42

Wed 16 Mar 2022

22:55:23

Fri 18 Mar 2022

18:37:03

22:45:15

"ル・サンク小石川後楽園"

Sun 20 Mar 2022

23:55:56

渋谷川に沿ってひたすら歩くことをした. 渋谷川は源流すぐから渋谷駅の下をちょうどくぐり抜けるまで暗渠で, 抜けたところにある渋谷ストリームのすぐ下から開渠になっており, そこから河口までは, いわゆる川として眺めることができる.

川の地点を表現するのに, 定期的に架けられている橋の名前が便利だ. 開渠になるすぐ手前には "稲荷橋" が架けられており, 川だった名残であることが伺える. そのすぐ次の "金王橋" から川がお目見えする.

渋谷区内までを "渋谷川", 港区に入ってからを "古川" と呼称するようだ.

川のヘリ部分を観察したが, べたっと塗り固めたのが渋谷川, 石積みしているのが古川と見た目も全然違うので, 区が別々の体制で保全してることがよくわかった.

"天現寺橋" が川の境目になっている. この段差部分がそうなのではないかと, 勝手に推測する.

古川は, 特に芝公園あたりから, ほとんど川の上に首都高が走っており, すぐ川沿いを歩かせてくれないことが多くてつまらなかった. あんまり見えない内に河口となる.

Mon 21 Mar 2022

17:38:02

17:41:10

2021 年買ってよかったもの駆け込み部門

"京都活具(Kyoto Katsugu) フライパン 鉄フライパン 26cm 油慣らし済 日本製"

2021/11/27 に 4100 円で購入していた. これが届いてからフライパンはこれしか使ってない. 初めての鉄フライパンなものでその "油慣らし済" の効果を正しく評価は出来ないのだが, 念の為に自分でも油慣らしを2日掛けてやり, 料理前には油回しをすることをしていた. 何を料理しても, くっつくことがほとんどなかった. 今では使ったあとは洗剤を使って洗うし, 火に掛けてしっかり水を飛ばすことだけ気をつけてる. 注意点として目で見てわかるような乾いたレベルにするだけでは駄目で, 200度くらいまで加熱してると水蒸気の煙が出るので, これが完全に消えるまでしっかり加熱しきることが大事. 手入れとしては, それくらいで, 今では本当に何を料理してもくっつくようなことがない. 完璧なフライパンが手に入ったので大変満足している.

Tue 22 Mar 2022

20:14:46

Python 標準モジュールの signal. signal.setitimer でタイマーが掛けられる. これで素直に手続きに時間制限を設けるといったことが出来る.

import signal
import time


class Timeout(Exception):
    pass


def handler(signum, frame):
    raise Timeout


def do_stuff(timeout: int):
    print("start")
    signal.signal(signal.SIGALRM, handler)
    signal.setitimer(signal.ITIMER_REAL, timeout)
    time.sleep(3)
    print("end")


def do_safe_stuff(timeout: int):
    try:
        do_stuff(timeout)
    except Exception as err:
        print("Timeout", err)


do_safe_stuff(2)
do_safe_stuff(4)

Thu 24 Mar 2022

12:55:48

16:54:42

積んでるゲームや本のことを時々思い起こしてストレスに勝手に感じてる. リストアップすることは一応自分を落ち着けることになるので良い.

たこ焼きのレシピ

どこかにメモしたと思ったんだけど見当たらないので改めて.

次を用意する(たこ焼き 20 個用)

工程

  1. 具材の準備
    • 全部適度に刻んでおく
    • 紅生姜は液に浸かってるなら水切りし, 細かく刻む
    • お皿に盛っておいて, すぐに使えるように置いておく
  2. 生地
    • ボウルに薄力粉と水を併せてよく溶く
    • 卵を K 個入れてよく溶く
    • 味付け要素を全部入れてよく溶く
  3. スーパー炎たこに油を塗りたくる
    • 丸めたキッチンペーパーを刷毛のように使うと便利
    • 穴の内側だけじゃなくて平らな部分も使って焼くので忘れないこと
  4. 最大火力で鉄板を熱する
    • 温まったら試しにいくつかの穴にタコを入れて熱され具合を眺める
      • 生地を少し入れるのでもいいが
    • 流派によるが, タコだけを最初に焼きたいならここで焼いてしまう
  5. すべての穴の 1/2 ~ 3/4 くらいが満たされる具合に生地を流し込む
    • 雑でいい
  6. 次の工程を手早くやる自信がない場合はここで中火に弱める
  7. 生地が固まらないうちにさっさと具材を入れる
    1. メイン具材(タコやウインナーなど)は漏らさず1つずつ穴に落としてく
      • 最初にタコを入れた穴はスキップする
    2. ネギ, 紅生姜, 天かす, チーズ等を入れる
      • 穴が 4x5 に配置されてるので, その真ん中の 2x3 の上に一旦全部盛る
      • そこから串など使って散らせば良い
  8. 残りの生地をすべて入れる
    • 上手く行っていれば, 鉄板の縁ギリギリまで生地が注がれているはず
      • これを生地に混ぜる水の量で調整できればプロ
  9. 移行ずっと中火
  10. 鉄板上に掘られた溝に沿って串を走らせる
    • 生地の焼かれ具合をこれでテストしている
    • 串で生地を切ることが出来るギリギリの硬さになったら, ひっくり返せる
  11. 火の強い穴から順にひっくり返す
    • ひっくり返そうとしてる穴の周辺にある溝(4辺)に串を走らせて, 生地を切っておくこと
      • 今切った矩形箇所の生地すべてが, その穴の上で作るたこ焼きの材料になる
      • 回転させるときに下の面に周辺の生地を押し込む
    • 無理そうだったら早めに諦めてその穴は放置する
      • 極力触らないのが一番良いとされている
  12. 焼きの仕上げ
    • 食べてもいいかなくらいに焼き上がったら隙間にサラダ油を追加, 塩を振って, 留めを刺す

20:56:25

旅行先案:石廊崎 #idea

Fri 25 Mar 2022

14:55:50

Sat 26 Mar 2022

13:22:33

夢日記。パン生地を捏ねたばかりの状態のものが美味しそうだったので一個分を食べた。口の中で膨らむので飲み込むのが大変だった。甘くて美味しかった。

夢日記。仮想好きな人と旅行に行った。観光バスは乗客全員が静脈針を刺していてバスから栄養を摂取できた。バスの運転は荒かったが短時間でカロリーを摂取できて皆喜んだ。

23:12:17

「lain が鬱ゲー」はやや誇大広告 真の鬱ゲーは「アマガミ」

Sun 27 Mar 2022

00:42:11


アマガミハウス - Ai
アマガミハウス - Ai [音楽・サウンド] 「……口数の多い変態ですね。本当に何を考えているんですか?」 mylist/5951792 mylist/18380934
 
www.nicovideo.jp/watch/sm12043594

Tue 29 Mar 2022

17:50:25

easy-scraper の純 Python 再実装 cympfh/easy-scraper-py を作った. これをラップした版の CLI コマンド cympfh/grepy を作った.

以前に tanakh/easy-scraper をもとに作った cympfh/web-grep と使い勝手は大体似せてる.

$ echo '<div> <b>x</b> <a>y</a> <b>z</b> </div>' | grepy '<b>{}</b>'
x
z

## デフォルトで ltsv を吐くように変更した
$ echo '<div> <b>x</b> <a>y</a> <b>z</b> </div>' | grepy '<div><b>{b}</b><a>{a}</a></>'
b:x     a:y

実装に使った言語が違う以上に違うこととしてパーザ部分が違う. オリジナルの tanakh/easy-scraper は HTML をパーズするのに servo/html5ever が使われてる. これは文句なく HTML は正しくパーズできるが XML はサポートしてない(はずだ).

たいてい問題ないがたまに困る. <body> 以下の HTML5 に準拠して行儀よく書かれた HTML コードは処理できるが, <head> 以下のメタデータを読めないことがある. <body> 以下で乱用された <title> タグ(これは <head> 以下で登場すべきタグだ)を正しく読めない. これはライブラリの問題ではなくて, 世の中の web は汚い HTML コードによって支えられてることが問題だ. しかしながら web スクレイピングとはそれと向き合うことを要求されている.

一番プレーンな XML としてパーズすることにした. だとすると難しいライブラリを使う必要などなくて, Python では標準モジュールに html.parser というのがあって, これでただただタグの開閉だけ見ることにした. 何かタグが開いたらネストして, 何かタグが閉じたらネストを閉じる. それ以上の難しいことは考えないことにした.

タグが閉じるとき名前も見てないので </> で構わない:

$ echo '<div> <b>x</b> <a>y</a> <b>z</b> </div>' | grepy '<b>{}</>'
x
z

19:42:20

grepyweb-grepy にリネームした. リネームすると何が良いか. pypi に登録できるようになる.


web-grepy
web-grep written in Python3
 
pypi.org/project/web-grepy/
$ pip install web-grepy
$ which web-grepy
$ curl ... | web-grepy '$PATTERN'

Wed 30 Mar 2022

01:12:43

情報に関するエントロピー増大の法則. エントロピーの偏りがあるとき, ここに価値があるとして, 拡散が始まる. あるいは霧消するのを待つ.

全体の情報量はむしろ減るのであって, 保存則を期待する直感を裏切るので, 辛い.

16:27:53

C-mC-[ を使う癖

大数の弱法則

平均が \(\mu\) であるようなある1つの分布から, 独立に観測して得る確率変数 \(X_1, X_2, \ldots\) があるときに,

\[\forall \delta > 0, \lim_{n \to \infty} P( | \frac{1}{n} \sum_{i=1}^n X_i - \mu | < \delta ) = 1.\]

連続関数 \(f\) で,

\[E[ f(\frac{1}{n} \sum X_i) ] = f(\mu).\]

\(n\) 変数 \(x_1, \ldots, x_n\) に関する積分,

\[I_n = \int dx \left( \frac{1}{n} \sum_i x_i^p \right)^q\]

これの \(n \to \infty\) なる極限値が大数の弱法則から求まる.

\(\int dx x^p = 1/(p+1)\) . これが各 \(x_i\) の平均値. \(f(-) = -^q\) を適用することで,

\[I_\infty = \left( \frac{1}{p+1} \right)^1\]

を得る.

16:45:06


ウォーターフォールチャートの作成方法!使い方のコツから活用事例まで - まいにちdoda - はたらくヒントをお届け
Microsoft Excel(以下、Excel)の2016バージョンから標準搭載されたグラフ「ウォーターフォール」。プレゼンの資料などで見たことがあるという方も多いのではないでしょうか。 この記事ではウォーターフォールグラフの活用事例や作り方を解説します。
 
mainichi.doda.jp/article/2019/06/25/1663.html

21:49:04

Thu 31 Mar 2022

13:29:58

"Can you solve EVERY PLL with just ONE J Perm?"

すべての PLL を, setup + Jb + clean で解こうとするもの. ここで Jb は J-Perm(b) の手順(ただし末尾の U 操作を除いたもの)を表す.

ところで, PLL の練習をしていて J-perm(b) と T-perm はとてもよく似ていることに気がついた. 具体的には重なってる操作単位が大きい.

次の操作を H と呼ぶことにする. (操作手順における括弧は気持ちのグルーピングだけ表していて意味はない.)

すると, J-perm(b) と T-perm は次で表される:

実際には H の後ろにはたいてい U' が続いて HU' が1セットになってる.

# J-perm (b)
XXb
XXa
Xab

# T-perm
XXb
aXa
XXb

まだいける:

# F-perm
Xab
XXX
Xab

次は y-perm だが, これはよく見ると Jb がそのまま使われてる.

# y-perm
abX
bXX
XXa

わかりやすさのために HU'U としてるがもちろんこれは H に省略可.

次の V-perm は実際は F-perm を挟んでる

# V-perm
XXa
XXb
abX