~/talk

Patterns of Basecamp's Application Architecture

Talkat RailsConf 2013 · 2013-04-29..05-02· [ruby-on-rails, frontend-architecture]
slides:none on file

Argues for a document‑first web model and shows concrete techniques: keybased cache expiration that auto‑invalidates on model changes, Russian doll nested caching plus cache‑digests to avoid template staleness, Turbolinks to keep the JS runtime, and simple polling‑based live updates. Builds a new Basecam and measures a mean response of 27 ms (median 59 ms, 90th 155 ms), and runs live updates at ~100,000 requests/min, so the stack works and delivers native‑feeling speed.

AI-written summary · about

  1. 0:00Introduction
  2. 1:26Frameworks as extractions
  3. 2:58The Basecamp connection
  4. 6:07Evolution of technology
  5. 9:21History of web frameworks
  6. 11:51Pioneering spirit
  7. 15:40Growth and contribution
  8. 18:40Adoption and philosophy
  9. 21:21Open source motivation
  10. 23:51Defining the purpose
  11. 25:47The context of Rails
  12. 29:16Documents vs GUIs
  13. 31:44Embracing constraints
  14. 34:34Native vs Web apps
  15. 36:28Evolving Basecamp
  16. 38:52Key-based caching
  17. 43:23Russian doll caching
  18. 47:48Cache digests
  19. 51:02Client-side decoration
  20. 53:38Permission-based links
  21. 57:11Turbolinks
  22. 1:00:32Live updates and conclusion
~/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.