実測 / 観測記録
もう 1 本の実測(エージェント実行テレメトリ)が AI の側を数えているのに対して、ここは人間の側の手の動きだけを数えた記録です。文章は書かず、git が覚えていることをそのまま図にしています。
| 対象 | 開発ノートが扱っているプロダクトのリポジトリ 12 本(定義は scripts/_repos.py。仕事のリポジトリと実験用は入れていない) |
|---|---|
| 期間 | 2023-04-13 〜 2026-09-20(42 ヶ月) |
| 総コミット | 1,246(マージを含む) |
| 数え方 | git log --all の作者ローカル時刻。全ブランチを数える(作業途中の stash は入らない)。プロダクトの状態は html/apps/index.html を読む |
| 更新 | デプロイのたびに数え直す(scripts/gen_notes_stats.py)。最終更新 2026-09-20 |
| 関連 | 実測の一覧 ・ 開発ノート ・ プロダクトの系譜 |
Activity
開発ノート一覧の図は直近 52 週しか見ていないので、始まりも、途中で止まったことも映りません。ここでは窓を切らずに全期間を出しています。
最初のコミットは 2023-04 の SimpleMemoPad で、そのあと 2024-10 から 2025-11 までの 14 ヶ月は 1 本も積まれていません。図のいちばん広い平地がそれで、2026-05 からの立ち上がりはその空白のあとに起きたことになります。
Composition
コミットメッセージの接頭辞で分けています。Conventional Commits の型に乗っているものだけを型あり、それ以外とマージは「型なし」に入れました。bugfix: を fix に寄せるといった読み替えはしていません。始めると「どこまでを揺れとして許すか」の線が毎回ぶれるので、規約に乗っているかどうかの 1 本で切っています。
「型なし」がふたつ目に大きいのは、規約を決める前に書いたコミットが丸ごとそこに落ちているからです。減らせる数字ではなく、いつから規約を使い始めたかの記録として残しています。
Portfolio
作った数ではなく、いま動いている数を数えます。止めたものも 1 つとして出します。
Rhythm
全部これは勤め先の仕事ではないので、土日と深夜に寄るのは想定どおりです。むしろ読み取るべきは平日の落ち方のほうで、金曜だけがはっきり低くなっています。
Decision Log
measure数えるのはコミットだけにして、行数は数えないと決めた
git log --numstat を全期間で取ったら、上位が js 165 万行・symbols 49 万行で埋まった。どちらも Flutter Web のビルド成果物をコミットしたぶんで、書いた量とは何の関係もない。除外リストを作れば数えられるが、そのリストが正しいことを誰も確かめられないまま数字だけが独り歩きする。scopeリポジトリの一覧を 1 ファイルに集約した
scripts/_repos.py だけに置き、一覧ページの図とこのページの両方がそこを読む。quiz)が集計に入っていなかった。ノートもアプリのカードもあるのに、ディレクトリ名とプロダクト名が違うせいで存在ごと見落としていた。定義が 2 箇所にあれば、同じ間違いが片方だけ直った状態で残る。scopeチェックアウト中のブランチではなく、全ブランチを数えることにした
git log に --all を付ける。ref 指定は scripts/_repos.py の LOG_REFS 1 箇所に置き、一覧の図とこのページの両方がそこを読む。git log だった。つまり既定ブランチでもなく、たまたまチェックアウトしていたブランチを数えていた。手元の 11 本のうち 7 本が main 以外にいて、他のブランチにあるコミットは丸ごと落ち、ブランチを切り替えるだけで総数が動く。数字が作業机の状態に依存しているのは、実測を名乗る図として筋が通らない。refs/stash は --all に入らないので、退避中の作業は今も数えない。form円をやめて 1 本の帯にした
spread())が丸ごと要らなくなった。小さい切片は帯の中では読めないので、凡例と実数表に任せている。Open Questions
changelog-daygrid.html で日付が前後している箇所と、changelog-certly.html に同じ版が 2 回出てくる箇所がある。先にデータのほうを直さないと、図が壊れているのかデータが壊れているのか読む側に分からない。2026-08 のような月だけの表記が 8 件あり、丸めるか落とすかを決めていない。