~/talk

Designing form validation the right way

Talkat Front End North 2018 · on Friday, 2018-01-19· [frontend-architecture, react, testing]
slides:none on file

Argues that inline validation improves speed and satisfaction but is often broken: 40% of major e‑commerce sites lack inline validation and of those that do 20% implement it incorrectly. Builds a React‑based library called ConfRise Form that keeps form state local (not Redux), accepts an array of composed validation functions that return promises, preserves server errors, and avoids disabling submit buttons. Demonstrates fixes for premature validation, dynamic cross‑field checks, and perceived UI lag.

AI-written summary · about

  1. 0:00Start
  2. 11:52It's 'meant to give immediate user support and guidance
  3. 14:114 key challenges that need to be overcome...
  4. 16:09Poor styling support and inflexible error output
  5. 17:57Impossible to align backend data constraints and error messages with the on the client
  6. 19:13Accept server side validations exist always
  7. 24:43Key point is that Conferizeform holds all the form state which is passed down to your component as props
  8. 30:19Inline validation is absolutely necessary but difficult to do right
  9. 31:23Use feedback while a user is filling out a field only in certain scenarios but use an appropriate delay
  10. 32:00Give users positive reinforcement where possible
  11. 33:09If your unsure where to add inline validations, focus more on fields which require some user thought to fill out
  12. 33:21Don't enforce restrictive formats on users- let the system do it for them
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.