Leo FabrikantinLevel Up CodingSecrets of JavaScript: a tale of React, performance optimization and multi-threadingLessons learned from optimizing a uniquely challenging search UI3 min read·May 23, 2019--2--2
Leo Fabrikantv1.0.0 Understanding the ProblemMy first implementation used the react-autocomplete and react-virtualized libraries for the UI.7 min read·May 23, 2019--2--2
Leo Fabrikantv1.1.0 Async Rendering (componentDidUpdate)Note: This is an example of a failed optimization attempt that I thought was worth highlighting because it leads to a better understanding…3 min read·May 23, 2019--1--1
Leo Fabrikantv1.1.1 Async Rendering (setTimeout)In the previous iteration we’ve split the components:4 min read·May 23, 2019--1--1
Leo Fabrikantv1.2.1 Web WorkersWeb workers provide the opportunity to run code on a separate thread outside of the main JavaScript thread. Each Web Worker is initialized…3 min read·May 23, 2019--1--1
Leo Fabrikantv1.2.0 Multi-threadingIn the previous iteration, we split our components and successfully used setTimeout to move the expensive search off to a separate…3 min read·May 23, 2019--4--4
Leo Fabrikantv1.2.2 Confirm searchTermThe obvious problem with the previous performance profile is that the expensive search algorithm is run even when the searchTerm is stale…2 min read·May 23, 2019----
Leo Fabrikantv1.2.3 Web Worker ArrayIf one extra thread is good, how about 4?2 min read·May 23, 2019--7--7
Leo FabrikantReact Autocomplete with React Virtualized to handle massive search results3 min read·Feb 19, 2018--1--1