~/talk

State of the Art User Interfaces with State Machines

Talkat Craft Conference 2019 · 2019-05-07..05-10· [frontend-architecture, testing]
slides:none on file

Finite state machines and statecharts model every UI state, ignore duplicate events (so clicking while searching fires no extra API calls), and expose missing transitions that cause bugs like the FaceTime microphone-on issue. The JavaScript/TypeScript library XState encodes machines as objects, feeds a visualizer to simulate states, runs an interpreter with a single onTransition hook for telemetry, and generates tests by enumerating simple/shortest paths; teams use it in Visual Studio Live Share and a Vault tutorial, and it maps to SCXML for broader toolchains.

AI-written summary · about

  1. 0:00Introduction
  2. 1:11Apple FaceTime Bug
  3. 6:50Code
  4. 8:58Complexity
  5. 10:52Software Modeling
  6. 11:48Finite State Machines
  7. 12:41Searching State
  8. 13:42State Machines in Code
  9. 15:09Design Your Weekend
  10. 16:03Using State Machines
  11. 17:31Visualizing Software Bugs
  12. 19:27State Explosion
  13. 19:56State Charts
  14. 20:37Actions
  15. 21:38Nested States
  16. 22:37Orthogonal States
  17. 24:34Grouping States
  18. 25:18XState
  19. 26:10Visualization
  20. 26:30Example
  21. 28:22Adaptivity Analytics
  22. 29:11Visualizing State Machines
  23. 30:56Decision Trees
  24. 31:21Automatic Decision Trees
  25. 32:02Interpret Function
  26. 33:30Reinforcement Learning
  27. 34:52Vault Project
  28. 35:36Service Workers
  29. 36:45SC XML
  30. 38:02Advantages
  31. 39:09Disadvantages
  32. 40:04Complexity tradeoffs
  33. 40:32World of State Charts
  34. 40:43Make your code do more than managing States
  35. 41:03Questions
~/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.