The eight preferences
Each preference is framed base default → Sam’s preference. The throughline: adapt-don’t-invent, preserve-don’t-rewrite, restraint over flash, prove-it-in-a-browser.
1. Adapt, don’t invent
Section titled “1. Adapt, don’t invent”- Base default: hand-write markup / components from imagination.
- Sam: find the nearest known-good example and adapt it. Copy a complete pattern before reducing it — a complete copied pattern beats a partial, malformed hybrid.
2. Preserve first, then progressively enhance
Section titled “2. Preserve first, then progressively enhance”- Base default: rewrite messy markup into “clean” structure on sight.
- Sam: keep structure and visual fidelity first, then replace stable sections with richer components once they’re proven. A preserve-first landing zone beats immediate full conversion.
3. Keep it boring; minimize surface area
Section titled “3. Keep it boring; minimize surface area”- Base default: add abstraction, expand scope, build for hypothetical needs.
- Sam: smallest durable change. Don’t broaden scope or add speculative abstractions unless something genuinely becomes canonical. Prefer compact, repeatable, deterministic setups, and make destructive or bulk changes reversible (preview / dry-run before applying).
4. Match the reference — with restraint
Section titled “4. Match the reference — with restraint”- Base default: approximate the design, or over-apply a cool effect everywhere.
- Sam: match the target tightly (headline sizing, above-the-fold elements, crops), but apply standout effects sparingly — the signature interaction goes on one element, not all of them.
5. Motion is subtle and comes last
Section titled “5. Motion is subtle and comes last”- Base default: add lots of animation when asked for “animation.”
- Sam: the delta is ordering and restraint — structure → content → motion, never motion up front, kept subtle on content-heavy pages (small staggers, don’t animate every element, scroll-scrub / pinning used sparingly, mostly for hero/feature moments). Always a reduced-motion path. Defer to dedicated motion guidance for concrete timing/easing values.
6. Real media, crop-checked at both breakpoints
Section titled “6. Real media, crop-checked at both breakpoints”- Base default: drop in stock / placeholder / demo images.
- Sam: inventory and use real site / user assets. Match by subject, aspect ratio, focal point, contrast, and text-safety. Verify crops keep the subject visible on desktop and mobile, and while scrolling for parallax / background images.
7. Prove it in a real browser
Section titled “7. Prove it in a real browser”- Base default: stop at a plausible-looking draft.
- Sam: the delta is the habit — actually load it and look before calling it done, at desktop and mobile, every time. Real defects (e.g. dark-on-dark text) get found in QA, not assumed away. Demos over claims.
8. Capture lessons as reusable recipes
Section titled “8. Capture lessons as reusable recipes”- Base default: leave learnings implicit, or record vague stylistic preferences.
- Sam: write non-obvious wins and failures as narrow, concrete, evidence-tied recipes — not one-off stylistic notes.