~/talk

Master your lists rendering

Talkat YGLF 2019: Code Camp · 2019-04-03..04-04· [frontend-architecture, react]
links:none on file
name:Arnon Nir
links:none on file
slides:none on file

Monday.com shows concrete fixes: using index keys vs unique IDs causes thousands of needless updates (example: 1.8s to shift a 1,000-row list with index keys versus ~0 with stable IDs). Chrome DevTools timing drives decisions; switching to windowing (react-virtualized) cuts DOM from ~10,000 to ~500 nodes and saves ~2.7s per open for 8,000 daily users. Further gains come from a light render (minimal cells) and replacing mount/delete with recycling views, which reduces render time from ~230ms to ~35ms (≈75% improvement).

AI-written summary · about

  1. 0:00Start
  2. 2:39Browser workflow
  3. 3:51The virtual
  4. 5:20Comparison algorithm
  5. 6:19The reconciliation algorithm 2 Assumptions
  6. 12:33POC React boards
  7. 13:44Example of heavy dom
  8. 14:29Implications of heavy lists
  9. 14:55What is windowing?
  10. 15:13React virtualized implementation
  11. 15:56Board scrolling example
  12. 16:27The Bolt Switch
  13. 20:38Remember the Status cell?
  14. 21:21Reducing the
  15. 22:00How we implemented it?
  16. 25:10POC - Virtualized
  17. 26:17React virtualized pitfalls
  18. 27:00Recycling Views
~/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.