Pivoting to React, at scale
summary
Pinterest pivots from Backbone/Django to React with a bottom‑up porting plan, finding 500k lines of web code and ~164 web engineers make gradual migration necessary. Concrete wins include 10% conversion lift on profile pages, 22% faster time to first interaction, reduced bundle size via a Backbone shim, and adoption of Redux plus a higher‑order data fetcher. Pain points are inconsistent CSS strategy, late testing with Enzyme, and messy data‑fetch/render coupling.
AI-written summary · about
chapters (23)
- 0:00Intro
- 0:40Always be pivoting The last 20% of a rewrite takes 80% of your time
- 2:10Meet Denzel, 2013 web platform Built on Backbone.js and Django
- 2:59Problems with Denzel Performance bottlenecks, CSS/JS bloat, dual code paths
- 4:05And more ES6, NodeJS, Babel, Webpack
- 4:56Defining "at scale"
- 5:31Pivoting smarter What data structure is a web application most like?
- 5:54It's a tree
- 6:41Things we did right
- 8:31Backbone lite 80% of the functionality, none of the dependencies
- 8:59Declarative states
- 10:15Scaling communications
- 12:00Mistakes were made
- 12:48Suggested learning order: React, ES6, npm, JS bundlers, routing. Flux Redux
- 13:00No top-down strategy
- 13:31Keeping HTML structure
- 13:51Data flow
- 14:19Coupling fetching data and rendering
- 15:02Testing
- 15:30The true value of React Testability, not speed
- 15:48CSS strategy Or lack thereof
- 16:34Conclusions
- 17:06DNA == code (This expression would fail a strict equality check)








