Managing state in web applications these days is increasingly difficult. Redux is a JavaScript framework for managing and maintaining application state that simplifies state management by restricting how data is updated in web apps. These restrictions make it easier to manage data changes and enable powerful developer tools. In this session, we'll look at how data flows in Redux applications and the role functional programming plays by looking at how to build applications with React and Redux. We'll also look at the role developer tools play, as well as how all this can make you a better developer.