Choose a Safe Default for a New Setting
Added 2026-11-02
Defaults should protect users, not make the feature look powerful.
I am adding a new setting to a system (feature below). Help me choose the default: 1) list the possible values and their consequences; 2) judge which default is safest when the user has not thought about it; 3) point out where defaults are most often set wrong — permissions, timeouts, retries, concurrency; 4) give a path from conservative to aggressive; 5) say when changing a default is allowed and who must be told. Do not pick an aggressive default to make a demo look good.
Site original
Chinese original
How to use
默认值是产品对用户最诚实的一次表态。
Try tweaking it
- Have it restate requirements and constraints before writing code.
- Ask for the smallest change plus a rollback path, not a full-file rewrite.
What you should get
- A minimal, runnable change with copy-ready code
- Impact list: which files and call sites must follow
Common mistakes
- Asking it to touch ten files at once, then losing track of what broke what.
- Pasting only the error, with no code or version, and getting an unfixable answer.
How to check the output
- The change runs, can be rolled back, and touches nothing unrelated.
- Edge cases (empty, oversized, concurrent) are covered or explained.
Where it works
- Good for: having it restate requirements and constraints, then propose the smallest runnable change.
- Watch out: include versions and a minimal reproduction with the error, or the fix may look plausible but not fit.