~/talk

Writing Code for Humans

slides:none on file

Code acts as a user interface: APIs must make the common case fast and the rare case possible. Concrete examples: the ancient compareDocumentPosition bitmask forces bitwise checks where a simple contains would do; svg.cx.baseVal.value shows an API that buries simple reads under layers; canvas getContext silently ignores conflicting options; URL() oddly requires a base for relative URLs. Design wins include shortcuts, sensible defaults, and using option objects; lessons come from thousands of PR reviews and W3C TAG reviews (11 members) feeding changes that actually improve usability.

AI-written summary · about

  1. 0:00Code is for humans
  2. 1:33API usability matters
  3. 4:38Documentation is not enough
  4. 6:41The role of the W3C TAG
  5. 10:55Start with user needs
  6. 14:32Make simple things easy
  7. 18:24Designing for power
  8. 21:26The ease-of-use curve
  9. 24:43Avoid unnecessary errors
  10. 28:14Single source of truth
  11. 30:58Consistency is key
  12. 35:05When to break consistency
  13. 38:13Sensible defaults
  14. 42:26Avoid argument traps
  15. 46:16Robustness and flexibility
  16. 49:54Empathy in design
~/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.