小さなトリックの積み重ねが実力になる — git log -S と EXPLAIN ANALYZE
派手な技術より、fzf・git pickaxe・EXPLAIN ANALYZE・正規表現の\bのような小さな知識の蓄積が日々の生産性を作る。シニアが共有する文化を勧める記事。
#なぜ今日これを選んだか
Hacker Newsで630ポイント超。内容は「小技12個」で地味だが、「1日1つ成長を残したい」という自分の欲求にそのまま刺さった。大きなフレームワークの習得ではなく、今日覚えた1コマンドが明日から効く。この粒度なら仕事の中で毎日拾える。
#要点
- 効果的なエンジニアリングの多くは「小さな知識の粒(nuggets)」の積み重ねから来る。知っているかどうかで作業時間が桁で変わる
- 具体例:
git log -S "文字列"(pickaxe。その文字列を足した/消したコミットを探す)、git checkout -(直前のブランチに戻る)、EXPLAIN ANALYZE(SQLの実行計画と実測時間)、正規表現の\b(単語境界)、SELECTをFROM無しで打って関数の挙動を確かめる、fzf/atuin での履歴検索、ripgrep - 対数バケット(
Math.floor(Math.log10(x)))でメトリクスの分布を掴む、Node のhttps.Agentでコネクション再利用してレイテンシを削る、など言語・インフラ寄りの小技も - 結論は「シニアがチームに定期的に小技を共有する文化を作れ」。個人の生産性が組織の生産性になる
#自分にとっての示唆
先日の振り返りで「ドメイン知識の薄さ」を課題に挙げたが、この記事の言う小技もまた知識の一種で、拾い方は同じだ。差は「気づいた瞬間にメモに残すかどうか」。postmortem に「今日わかったこと(1行)」欄を作ってあるので、今日から小技を1行書く用途にも使う。今日の1つは git log -S。自分のSQLiteを集計するSQLを書く時は EXPLAIN ANALYZE(SQLiteなら EXPLAIN QUERY PLAN)を一度は付けてみる。手数の多さは短時間で見える差になる。月水金のRust30分の枠を増やす必要はなく、日々の作業の中で1つ拾えばいい。