~/talk

Counter-spells and the art of keeping your application safe

Talkat dotSecurity 2017 · on Friday, 2017-04-21· [security, frontend-architecture]
slides:none on file

Intercom runs a four‑year‑old Ember front end with Rails, 55 authors with >250 commits each producing ~2,000 file changes, 30,000 additions and 22,000 deletions while shipping >100 times/day, which forces concrete fixes: use getAttribute not .href to avoid browser XSS quirks, split components instead of returning HTML, prefer DOM helpers over triple curlies, always add rel=noopener noreferrer for target=_blank, apply ember-template-lint plus a custom ESLint rule and caching to cut feedback from ~30s to 1.5 seconds.

AI-written summary · about

  1. 0:00Intro
  2. 0:40Story
  3. 4:23Frontend
  4. 9:04Helpers
  5. 14:33JavaScript
~/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.