~/talk

Scripting in the 3rd Party True Tales of Horror and Hope

Talkat CascadiaFest 2016 · 2016-08-03..08-05· [javascript, security]
links:none on file
slides:none on file

Third-party scripts load as tiny async loaders, serve per-customer config, and must be cached and CDN-hosted to handle 1 billion pageviews/month while avoiding blocking the page. Real failures include monkey-patched JSON.stringify and Prototype-style globals, an XHR analytics switch that broke checkout by other scripts, and a UMD race condition where RequireJS triggers sporadic errors. Practical defenses include stupid iframe tricks to get a clean window, CORS/easyXDM for cross-domain calls, integration tests against many browsers (Sauce Labs/BrowserStack), and proxy-based live testing (Charles/Fiddler).

AI-written summary · about

  1. 0:00Introduction and speaker intro
  2. 1:08Defining third-party scripts
  3. 3:36Integration and delivery methods
  4. 8:17Loading strategies and performance
  5. 10:23Security considerations for scripts
  6. 11:04Building defensively like a guest
  7. 14:15JavaScript environment challenges
  8. 16:42Real-world scripting horror stories
  9. 18:52Cross-domain requests and solutions
  10. 20:00Tools testing and iteration
  11. 24:40Testing on production sites
  12. 25:02Final notes and resources
~/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.