Optimize perception and reality
Fast systems respond early, preserve layout and make useful progress visible. A quick shell is not enough if the primary action shifts after the user reaches for it or if an optimistic update later disappears without explanation.
Measure the step the user is trying to complete, not only the page-load milestone that is easiest to collect.
Example scenario: a filtered project list
Example scenario: a project list responds instantly to a filter, but each card image loads without reserved space and repeatedly moves the controls. Reserve the media aspect ratio, update the result count immediately and announce completion to assistive technology. Perceived speed improves because the interface remains usable while assets arrive.
This is an illustrative scenario, not a measured claim about this portfolio or a client project.
Budgets create explicit trade-offs
Performance budgets turn a vague aspiration into an engineering constraint. A strict initial-JavaScript budget may require fewer client-side effects or delayed analytics; a stability budget may require fixed media dimensions and restrained font loading. The right budget is the one linked to a user task and checked continuously.
A short performance checklist
Define one budget per critical journey; reserve dimensions for fixed-format media; prioritize the primary action; test slow devices and networks; inspect high percentiles instead of averages alone; and make regressions fail a repeatable check before release.
