We tested with five people and found the same problem four times. Users scan, so headings carry more weight than paragraphs. Dark mode is a second palette, not an inverted first one.
Lessons
An error message should blame the system, not the person. Whitespace is not empty; it is doing the grouping for you. Motion should explain a change, not decorate it.
Type scale decisions ripple into every component downstream. We removed three options and support tickets dropped by a third.
The short version
An error message should blame the system, not the person. Good defaults are the design most users will ever see. Labels above fields beat clever placeholders every time. Contrast is not a style choice; it is whether people can read the page.
An error message should blame the system, not the person. Motion should explain a change, not decorate it.
Details
Users scan, so headings carry more weight than paragraphs. The prototype answered in a day what the meeting could not in a month. Contrast is not a style choice; it is whether people can read the page. Dark mode is a second palette, not an inverted first one.
Labels above fields beat clever placeholders every time.
The prototype answered in a day what the meeting could not in a month. Whitespace is not empty; it is doing the grouping for you.
Whitespace is not empty; it is doing the grouping for you. Type scale decisions ripple into every component downstream.

Leave a Reply