- React
- ReactJS Day
- 2018
- A Reappreciation of Redux: Why my team at PayPal removed Apollo Client and went back to Redux
A Reappreciation of Redux: Why my team at PayPal removed Apollo Client and went back to Redux
Max Millington at ReactJS Day 2018
Keeping up with the JavaScript community can be one of the most difficult yet enjoyable parts of being a frontend developer. It is not easy to know what will truly deliver lasting value to your development as opposed to what is merely a passing fad or what will fail to live up to its hype. My team at PayPal has been excitedly using GraphQL in many of our new apps. We love the idea of a single endpoint providing frontend developers access to the great multitude of PayPal services. In our excitement for GraphQL, we also implemented Apollo Client and React Apollo into our app. After all, the boilerplate and heavy weight of Redux has been much maligned, and we saw and easy way to significantly reduce the amount of code we wrote, all the while utilizing the sleek new utility for state management that Apollo Client provided. However, we soon realized that we had made a mistake and pre-emptively jumped into Apollo Client. The fact of the matter is, Redux is much more than simply state management, and we had failed in our original estimation to fully appreciate what Redux gave our app that Apollo Client simply does not. This talk will explore why we initially were so excited about Apollo Client and why it was our first choice. It will then explain how Apollo Client fell short of our needs, and why Redux is a significantly better choice for most larger applications. Finally, it will hope to inspire a reappreciation for Redux.