2026年 01月 15日

ブラウザが www.lowreal.net を lowreal.net として表示するのが気持ち悪すぎるんだよなあ。何なのそれと思う。おれは悪くないです。ブラウザが100%悪い。

プログラミング言語はコミュニケーションのためのもの

プログラムろくに書いたことない人はプログラミング言語をシンプルに誤解してて、機械語と区別がついていないのだろうと思う。

プログラミング言語はたまたま最終的に機械語に変換できるだけで、前提は人間同士(自分自身も含む)のコミュニケーション言語であるという理解がない。形式言語という形で意図を正確に伝えられるのがプログラミング言語であって、そうすると、たまたま実行可能にしやすいだけ。

LLMとのやりとりで自然言語を通してプログラミング言語を生成するのは、この意図が正確に反映されたかを、人間がレビューする必要性があるからにほかならない。

「ちゃんとできたか」を確認するのは最終的にはその要求をしている主体だ。一方で、人間は要求・要件を自然言語で100%正確に漏れなく曖昧さなく書くことはできない。なぜなら自然言語だから。やってみたいことを書き出したら矛盾することすらある。

プログラミングは、単なる実装(機械への命令)というより、曖昧な人間の意思を形式言語でミラーして具現化する行為であって、これはLLMを通じても別に変わらない。

とにかく本質的には人間は自分が欲しいものを、そもそも自分自身でも正確に理解していないところにある。「AIが無限に強くなれば言わなくてもやってくれる」という期待は、自分は自分が欲しいものを正確に理解しているという根本的な錯覚に基いている。

たとえAIが神になっても祈る側の願いが不定な以上は結果は定まらず、祈りと矛盾しないが意図しない結果がうまれる。この手の話は神話の時代からあり、上記の通り人間の埋め込みバグなので解決することはない。

だからこそ一度コードという形で曖昧さをなくし、テスト可能にし、自分の要求がなんだったのかを矛盾なく記述する必要がある。

ScreenToGif

Windows でスクリーンレコード気軽にとるなら ScreenToGif がよさげ?

名前からしてデフォルトでは anigif 出力なんだけど、WebM 形式にするとエンコーダーを選べて、普通に AVIF 出力ができる。録音はそもそもされないみたい。


macOS だと何がいいんだろうな。Kap なのかな。今度使ってみる。

Kap 非常にシンプルで完璧に使い勝手良いが、デフォルトだと WebM + VP9 か AV1 + MP4 で、パラメータもカスタマイズできないみたい。まぁ VP9 でもいいけども

簡易並列テストランナー

複数のテストを並列実行でマルチカラムで表示するやつをGeminiに書いてもらった。依存なし180行 で必要十分なのができて満足

人間が実行したときは途中経過を見せて、tty 経由じゃなければ最後まで無言でやってFAILしたものだけログをすべて出すというようにしてる。(Agentが実行するとき対策)

もうちょっと綺麗に(108行)なった。