Главная
Study mode:
on
1
Intro
2
Always be pivoting The last 20% of a rewrite takes 80% of your time
3
Meet Denzel, 2013 web platform Built on Backbone.js and Django
4
Problems with Denzel Performance bottlenecks, CSS/JS bloat, dual code paths
5
And more ES6, NodeJS, Babel, Webpack
6
Defining "at scale"
7
498, 151 lines of code just in our web app! 164 web developers
8
Pivoting smarter What data structure is a web application most like?
9
It's a tree
10
Top down vs. bottom up
11
Things we did right
12
Measuring individual features
13
Backbone lite 80% of the functionality, none of the dependencies
14
Declarative states
15
Scaling communications
16
Mistakes were made
17
Suggested learning order: React, ES6, npm, JS bundlers, routing. Flux Redux
18
No top-down strategy
19
Keeping HTML structure
20
Data flow
21
Coupling fetching data and rendering
22
Testing
23
The true value of React Testability, not speed
24
CSS strategy Or lack thereof
25
Conclusions
26
Iteratively update semantics To ease the pain of pivoting your JS framework
27
DNA == code (This expression would fail a strict equality check)
Description:
Explore a conference talk from JSConf Iceland 2016 detailing Pinterest's transition from a custom Backbone/Django framework to React. Learn about the challenges faced during the migration process, including performance bottlenecks, code bloat, and scaling issues. Discover the strategies employed to overcome these obstacles, such as measuring individual features, implementing a "Backbone lite" solution, and adopting declarative states. Gain insights into the mistakes made during the transition, including the lack of a top-down strategy and coupling data fetching with rendering. Understand the true value of React in terms of testability and the importance of iteratively updating semantics when pivoting to a new JavaScript framework. Dive into the complexities of managing a large-scale web application with nearly 500,000 lines of code and a team of 164 web developers.

Pivoting to React, at Scale

JSConf
Add to list