Workshop: Advanced State Management with Redux

Location: Barrymore, 9th fl.

Duration: 9:00am - 12:00pm

Day of week: Thursday

Level: Intermediate

Key Takeaways

  • Learn how Redux works outside of a React application
  • Understand the inner-workings of the React-Redux bindings.
  • Write custom middleware for Redux.
  • Work with asynchronous APIs.
  • Structure application state for optimal performance and maintainability.
  • Implement patterns such as time-travelling.

Prerequisites

  • You should be comfortable with JavaScript.
  • Some React knowledge is required, but if you attended the React workshop earlier in the day, you will be able to follow along!
  • You'll need a recent version of Node.js installed on your computer with administrative access.
  • You'll also want the following extensions for Google Chrome.

React Developer Tools
Redux Developer Tools

Managing application state in a way that is both performant and maintainable is no small task. Redux offers a battle-tested solution for managing state in large, production-scale applications. That said, it can be overwhelming to wrap your head around when you're beginning and even trickier when you're learning it in the context of a React application. It this workshop, we'll look at Redux in its simplest form. We'll explore best practices for structuring your data and binding your application state to a React application. We'll implement advanced patterns such as undo/redo, middleware, and asynchronous actions that work with a server-side API.

Speaker: Steve Kinney

Principal Engineer @SendGrid

Steve is a senior principal engineer and front-end architect at Twilio SendGrid. He is the author of Electron in Action. Steve is the director emeritus and founder of the front-end engineering program at the Turing School for Software and Design—a non-profit developer training program. He is an organizer of DinosaurJS, a JavaScript conference in Denver, Colorado and an instructor for Frontend Masters.

Find Steve Kinney at

Other Workshops:

Tracks

Monday, 24 June

Tuesday, 25 June

Wednesday, 26 June

  • Architecting For Failure

    More than just building software, building deployable production ready software in the face of guaranteed failure.

  • 21st Century Languages

    Lessons learned from building languages like Rust, Go-lang, Swift, Kotlin, and more.

  • Building High-Performing Teams

    What “high-performing team” means and how to build one effectively depends on context. This track will share different experiences of building high-performing teams in order to highlight how different contexts lead to different solutions but also what typically stays the same because we’re still dealing with humans trying to work together. How do different forces affect the building of high-performing teams.

  • Software Defined Infrastructure: Kubernetes, Service Meshes, & Beyond

    Deploying, scaling, managing your services is undifferentiated heavy lifting. Hear stories, learn techniques, and dive deep into software infrastructure.

  • High-Performance Computing: Lessons from FinTech & AdTech

    Killing latency and getting the most out of your hardware.