measure-dont-guess
仮説を白黒つける計測を実装や修正の前に決めて実行し、その結果だけで判断する。不具合の原因を調べるとき、性能や挙動を比べるとき、新しい機能を書き始めるとき、「たぶん」で判断しそうになったときに使う。
Savant verdict: Pending analysis
Imported from the source hub; Savant's analysis is still running.
Live evaluation
Not evaluated yet. Workspaces can request a live evaluation.
Security assessment
Scan pending.
Structure
- No license declaredConfirm you may reuse this skill before importing it into your repository.
SKILL.md
--- name: measure-dont-guess description: 仮説を白黒つける計測を実装や修正の前に決めて実行し、その結果だけで判断する。不具合の原因を調べるとき、性能や挙動を比べるとき、新しい機能を書き始めるとき、「たぶん」で判断しそうになったときに使う。 --- # measure-dont-guess 推測ではなく計測で判断するための規則である。 - 計る前に、仮説と採用する値を書く - 本番か、本番と同じ条件で計る - 計測していない主張は推測と明記する - 計れないときは推測で進めず、何が足りないかをユーザーに伝える ## この skill が必要な理由と達成したい状態 この skill が必要な理由は、推測が計るより速く答えを出し、たいてい筋が通って見えることにある。推測で進めた変更は、結果が正しくても偶然か根拠によるものかを区別できない。間違っていても気づく材料が残らない。次に同じ判断をする人は、また推測から始める。 この skill で達成したい状態は、すべての判断が、誰でも再現できる根拠に基づいていることである。 ## 本番での計測 判断の根拠にする計測は、本番環境で行う。手元やテスト環境は、データの規模や外部サービスが違い、本番と逆の結論が出ることがある。 - 本番で計れないときは、ステージング環境を作って計る - ステージングは、コード、設定、インフラ、データの規模と形、外部サービスを本番と同じにする - 手元やテスト環境の計測は、計る仕組みが動くかを確かめるためだけに使う ## 計測の記録 - 計測していない主張は推測と明記する - 変更の根拠にした計測は、条件とコマンドと結果をコミットメッセージに書く - 都合の悪い結果が出たら、そのまま報告して仮説を見直す ## 用途 次もすべて読むこと。 - [`measure`](usecases/measure.md)。仮説を立てて計り、結果で判断する - [`find-root-cause`](usecases/find-root-cause.md)。不具合の根本原因を探す - [`improve-performance`](usecases/improve-performance.md)。性能を改善する ## 参照 [`typescript-template`](references/typescript-template.md) も読むこと。masseater/typescript-template から作ったリポジトリで、何をどこで計るかを書いている。ほかのリポジトリでは、同じ役割のものに読み替える。