Kent C. Dodds

Articles & Tutorials

JavaScript to Know for React (kentcdodds.com)
Aug 20, 2019
What JavaScript features you should be familiar with when learning and using React.
5 Tips to Help You Avoid React Hooks Pitfalls (kentcdodds.com)
Aug 05, 2019
Let's explore some hook gotchas and how to avoid them.
Avoid Nesting when you're Testing (kentcdodds.com)
Jul 30, 2019
Why using hooks like beforeEach as a mechanism for code reuse leads to unmaintainable tests and how to avoid it.
Write tests. Not too many. Mostly integration. (kentcdodds.com)
Jul 17, 2019
Guillermo Rauch tweeted this a while back. Let's take a dive into what it means.
React Fundamentals: Props vs State (kentcdodds.com)
Jul 08, 2019
What's the difference between props and state in React?
One simple trick to optimize React re-renders (kentcdodds.com)
Jun 24, 2019
Without using React.memo, PureComponent, or shouldComponentUpdate.
When to useMemo and useCallback (kentcdodds.com)
Jun 04, 2019
Performance optimizations ALWAYS come with a cost but do NOT always come with a benefit. Let's talk about the costs and benefits of useMemo and useCallback.
Avoid the Test User (kentcdodds.com)
May 24, 2019
How your UI code has only two users, but the wrong tests can add a third.
Authentication in React Applications (kentcdodds.com)
May 20, 2019
How to handle user authentication in modern React Applications with context and hooks.
How to optimize your context value (kentcdodds.com)
May 06, 2019
Why and how you can optimize your context provider's value to avoid performance issues.
Always useMemo your context value (kentcdodds.com)
May 06, 2019
Why and how you should always use React's useMemo hook for your context provider value prop.
How to use React Context effectively (kentcdodds.com)
Apr 29, 2019
How to create and expose React Context providers and consumers.
Application State Management with React (kentcdodds.com)
Apr 22, 2019
How React is all you need to manage your application state.
How to know what to test (kentcdodds.com)
Apr 13, 2019
Practical advice to help you determine what to test.
AHA Testing (kentcdodds.com)
Apr 07, 2019
How to apply the "Avoid Hasty Abstraction" principle to your test code.
The State Reducer Pattern with React Hooks (kentcdodds.com)
Mar 25, 2019
A pattern for you to use in custom hooks to enhance the power and flexibility of your hooks.
How to Enable React Strict Mode (kentcdodds.com)
Mar 04, 2019
What it is and how to add it to your app.
React Hooks: Compound Components (kentcdodds.com)
Feb 18, 2019
How do compound components change with React hooks? A few weeks ago I did a DevTips with Kent livestream where I show you how to refactor the compound components pattern from a class component to a function component with React hooks.
Should I useState or useReducer? (kentcdodds.com)
Feb 11, 2019
Two built-in React hooks that handle state, which one should you use? Whenever there are two things to do the same thing, people inevitably ask: "When do I use one over the other?"
Please stop building inaccessible forms (and how to fix them) (blog.kentcdodds.com)
Feb 04, 2019
I regularly find inaccessible forms. In this post we’ll check out one of the common accessibility problems and fix it.
paypal-scripts now supports TypeScript as well as JavaScript (medium.com)
Jan 21, 2019
What happened that made TypeScript viable for me and worth migrating paypal-scripts for.
React Hooks: What’s going to happen to my tests? (blog.kentcdodds.com)
Dec 24, 2018
How can we prepare our tests for React’s new hooks feature?
React/JSX as a server-side templating language (blog.kentcdodds.com)
Oct 01, 2018
Using React function components to render your website’s skeleton index.html
Why I Never Use Shallow Rendering (blog.kentcdodds.com)
Jul 23, 2018
Tests should help me be confident that my application is working and there are better ways to do that than shallow rendering.
When to break up a component into multiple components (blog.kentcdodds.com)
Jul 16, 2018
At what point does it make sense to break a single component into multiple components?
What is JSX? (blog.kentcdodds.com)
Jul 09, 2018
You may use it every day, but have you seen what happens after Babel transpiles it?
Test Isolation with React (blog.kentcdodds.com)
Jul 02, 2018
Why your tests should be completely isolated from one another and how to do that.
downshift 2.0.0 released (blog.kentcdodds.com)
Jun 15, 2018
Even better accessibility, React Native and ReasonReact support, even simpler API, improved docs, new examples site, Flow and TypeScript support, and a new online community.
When to use Control Props or State Reducers (blog.kentcdodds.com)
Jun 11, 2018
Comparing two similar patterns that enable many of the same use cases.
Prop Drilling (blog.kentcdodds.com)
May 21, 2018
What it is, why it’s good, why it’s bad, and how to avoid common problems with it.
Mixing Component Patterns (blog.kentcdodds.com)
May 07, 2018
Let’s make a component that supports Render Props, Component Injection, Compound Components, the Provider Pattern, and Higher Order Components!
Migrating to React’s New Context API (blog.kentcdodds.com)
Apr 23, 2018
Let’s compare the before/after of React’s new context API.
How to React (blog.kentcdodds.com)
Apr 16, 2018
Let’s see how learning React in the right order can make it less overwhelming.
Compose Render Props (blog.kentcdodds.com)
Apr 09, 2018
One of the reasons I’m so excited about render props.
Introducing the react-testing-library (blog.kentcdodds.com)
Apr 02, 2018
A simpler replacement for enzyme that encourages good testing practices.
When to NOT use Render Props (blog.kentcdodds.com)
Mar 26, 2018
Let’s back up from the hype and think critically about the render props pattern.
Application State Management (blog.kentcdodds.com)
Feb 26, 2018
Some approaches to solving one of the most complex problems in software.
The state reducer pattern (blog.kentcdodds.com)
Feb 19, 2018
A new pattern has been implemented in downshift and it’s awesome. Use the state reducer pattern to make your components more useful.
React’s new Context API (medium.com)
Feb 07, 2018
It’s way more ergonomic, it’s no longer “experimental,” and it’s now a first-class API!
Answers to common questions about render props (blog.kentcdodds.com)
Jan 12, 2018
Because there’s a ton of hype, and a bunch of questions.
Testing components using render props (blog.kentcdodds.com)
Jan 08, 2018
Let’s look at how we can write tests for React components that use render props!
Write tests. Not too many. Mostly integration. (blog.kentcdodds.com)
Oct 16, 2017
Guillermo Rauch tweeted this a while back. Let’s take a quick dive into what it means.
Introducing downshift for React (blog.kentcdodds.com)
Aug 23, 2017
downshift is the primitive you need to build simple, flexible, WAI-ARIA compliant React autocomplete/typeahead/dropdown/select/combobox/etc (AKA “item selection”) (p)react components.

Libraries

downshift (downshift.netlify.com)6484
v3.2.12
Aug 09, 2019
🏎 Primitive to build simple, flexible, WAI-ARIA compliant enhanced input React components
react-testing-library (github.com)6108
v8.0.1
May 31, 2019
🐐 Simple and complete React DOM testing utilities that encourage good testing practices
dom-testing-library (npm.im)1070
v5.0.0
May 30, 2019
Simple and complete DOM testing utilities that encourage good testing practices.

Podcast Episodes

Realigning Your Model of React After Hooks (kentcdodds.com)
Aug 08, 2019
Dan Abramov discusses how the addition of hooks changed how we write React.
Develop Your Career with Kent C. Dodds (reactpodcast.com)
May 09, 2019
Chantastic asks about the approach Kent took while developing his career PayPal, what he had to give up to stay focused, and what's changed now that he's independent.
Delete Your Components with Kent C. Dodds (reactpodcast.com)
Sep 18, 2018
Chantastic talks with Kent C. Dodds about his adventures in React development and why we should be optimizing code for delete-ability. They discuss React Rally, managing your career, taming your ego, keeping healthy and happy on Twitter, tools for composing components well and when to use them, and what’s next for React.
Breaking up with Higher Order Components with David Atchley (devchat.tv)
Apr 17, 2018
In this episode of React Round Up, the panel discuss breaking up with higher-order components with David Atchley. They talk about what higher-order components and render props are and when you would want to use them to help you in your code. They also touch on overuse and misuse of applications and coding tools and the difference between using render props and HOCs.
Setting Up and Getting Used to Gatsby with Aman Mittal (devchat.tv)
Apr 10, 2018
In this episode of React Round Up, the panel discuss setting up and getting used to Gatsby with Aman Mittal. Aman is a computer science graduate, has been working in web development for the past two years, and has worked with companies such as freeCodeCamp. He has been working with React for the past 6 months and started working with Gatsby in January of 2018. They talk about what Gatsby is, why you would want to use it, and what a simple Gatsby site would look like.
RRU 004: Redux-Bundler with Henrik Joreteg (devchat.tv)
Mar 27, 2018
In this episode of React Round Up, the panel discusses redux-bundler with Henrik Joreteg. They talk about his redux-bundler on GitHub and the ability to make changes behind the scenes without having to bother the user. He gives a general background on why he created the bundler and how you can use it in your programming to make your life easier.
Advanced Component Patterns and Downshift with Kent C. Dodds (devchat.tv)
Mar 20, 2018
In this episode of React Round Up, the panel discusses advanced component patterns and Downshift. They talk about different component patterns, especially render prop patters, and the fact that Downshift allows for your components to be much more useful generally for more people. They also note that the render prop patterns can help to separate logic from view, which makes things easier to develop.
Getting Started with React (devchat.tv)
Mar 06, 2018
In this episode of React Round-Up, the panel discusses how they each got into React and they provide some great resources for people who want to learn more about React and what it’s all about. They emphasize the fact that React is a very straightforward language and can be used relatively painlessly with a little bit of learning before jumping in.
Learning React with Kent C. Dodds (egghead.io)
Dec 29, 2017
Kent C. Dodds, a leading React expert, speaks with John Lindquist and Joel Hooks, the co-founders of egghead, about how React is a fantastic technology to learn for both newcomers to programming and Javascript grey-beards alike.
Kent C. Dodds - Building Reusable React Components with Render Props (fullstackradio.com)
Dec 21, 2017
In this episode, Adam talks to Kent C. Dodds about building downshift, a React autocomplete component he designed for experiences he needed to build at PayPal. Kent gives a behind-the-scenes look at how the library uses the render prop pattern to allow maximum customizability without complex configuration.

Video Guides & Talks

Requisite React (youtube.com)
Apr 24, 2019
In this talk, we'll get more effective at using React Hooks, React Suspense, and JSX.
Saving Form State in Local Storage with React (youtube.com)
Mar 15, 2019
I've got a contact form that I need to save to local storage so if people refresh the page and come back it's still around. Let's see how that goes!
Using React.useReducer to avoid state bugs (youtube.com)
Mar 14, 2019
A while back I tweeted an issue I was having with a stopwatch component. I'm going to show you why it was happening and Dan's helpful solution to the problem using React.useReducer (and why React.useState wasn't well suited for this task).
Building a contact form with Lambda Functions (youtube.com)
Mar 14, 2019
My contact form leaves some things to be desired with the workflow on my end so I'm going to make a serverless function for my contact form so it'll do what I want it to do.
How to Test a Custom React Hook (that uses setTimeout) (youtube.com)
Feb 27, 2019
Someone asked me to test the hook we used yesterday.
Accepting and cloning a react element as a prop (youtube.com)
Feb 11, 2019
This is a situation I faced while working on kentcdodds.com and thought you all would find it interesting!
Let's HOOK up with React (youtube.com)
Feb 06, 2019
Going to be exploring a bunch of stuff about React hooks which was released today!
Updating react-testing-library for React 16.8.0 (part 2) (youtube.com)
Feb 06, 2019
Hooks was released along with a special utility for testing React properly. I'm going to update react-testing-library to make it easier for people to test things properly.
Updating react-testing-library for React 16.8.0 (youtube.com)
Feb 05, 2019
React has a new utility for testing and I'm going to update react-testing-library to use that utility.
React Hooks: useImperativeHandle (youtube.com)
Jan 22, 2019
Honestly we're basically just going to play with the example in the docs.
Random VSCode Workflow Tips (youtube.com)
Jan 14, 2019
Not that I'm much of a VSCode power user, but a lot of people ask me about this so I thought I'd show how I use VSCode.
How to make Jest run anything (youtube.com)
Jan 11, 2019
This is to show how my custom jest-node-runner works.
How NOT to test custom React hooks (and how to test them) (youtube.com)
Jan 07, 2019
It can be tempting to try and call your custom hook manually and test it that way, but you'll run into the error "Hooks can only be called inside the body of a function component." And for good reason. Let's talk about why that is and the proper way to test a custom React hook.
React Component Organization Tips (youtube.com)
Jan 04, 2019
Someone asked me a question about destructuring custom `this` methods in the `render` method. I'm going to answer their question in addition to talk about why I don't like using methods like that at all.
Add Cypress to a gatsby app (youtube.com)
Dec 20, 2018
I've got a little gatsby app, let's see how we can add Cypress to test it!
Test components that use React.lazy + Suspense (youtube.com)
Dec 12, 2018
This was something I bumped into yesterday and thought I'd share how I test it.
Create a custom useLocalStorage React hook (youtube.com)
Dec 10, 2018
Let's just make a quick little useLocalStorage hook
React Hooks: Refactoring a render-prop-based component to use hooks! (youtube.com)
Nov 26, 2018
Going to be refactoring react-toggled to export a new fancy useToggle hook.
Nested Suspense Issues (youtube.com)
Nov 20, 2018
It appears that the top level Suspense maxDuration is being applied while the nested fallback is taking place.
Why React Hooks (youtube.com)
Nov 18, 2018
Simplify and speed up your app with React Hooks.
Improve a11y and usability of an icon component (youtube.com)
Nov 16, 2018
Someone wanted my feedback on an icon component. Here it is!
Effective unit testing (youtube.com)
Nov 15, 2018
True units are awesome to test!
Use jest's expect module without jest (youtube.com)
Nov 14, 2018
James Long tweeted about how you can do this and I thought it'd be cool to share :)
React Hooks & testing: Stepping through React code (youtube.com)
Nov 05, 2018
I'm trying to figure out the best way to simplify testing of React components with react-testing-library.
Test Driven Development: When it works and when it doesn't (youtube.com)
Oct 24, 2018
Testing code before its written has some great advantages, but it's not a perfect solution for every scenario. Let's explore some of these situations.
Testing Q&A: You ask, I answer. Part 2! (youtube.com)
Oct 23, 2018
You have more questions. View live and ask in the chat and I'll get through as many as I can!
Demystifying Testing (youtube.com)
Oct 18, 2018
I got some feedback that there’s confusion around what all of these names and terms are. Let's go over them!
Testing Q&A: You ask, I answer. (youtube.com)
Oct 17, 2018
This is wide open! For ~15 minutes I'm all ears! Let's talk testing!
Releasing downshift 3.0.0 (youtube.com)
Oct 08, 2018
I'm going to actually do the release during this livestream! WOOO!
What's coming in downshift 3.0.0 (youtube.com)
Oct 06, 2018
I'm working on cleaning up a few things and making downshift 3.0.0!
Using and writing custom babel macros with create-react-app v2 (youtube.com)
Sep 27, 2018
The last beta of create-react-app v2 has been published. Let's see how you can use babel-plugin-macros in a create-react-app app and how to write your own.
React... Suspense... (youtube.com)
Sep 26, 2018
Livestream of my talk @ SLC frontend meetup
Example of Classless Components with @reach/component-component (youtube.com)
Sep 20, 2018
I just built something neat last night and thought I'd share it with you :)
    Debug tests in create-react-app (youtube.com)
    Sep 18, 2018
    If you want to run your tests in create-react-app with the Chrome Debugger.
    Installing Gatsby (youtube.com)
    Sep 18, 2018
    I'm doing some research on gatsby. Let's see what it takes to get this installed and running from the perspective of a newcomer.
    Confident React (youtube.com)
    Sep 02, 2018
    We want to make sure that when we ship new code, our users can use the application. The best way we've found to do that is to write automated tests that run before we deploy a new version of the app. But if our tests aren't doing exactly what the user will do, then how do we really know that things will work when users interact with our apps?
    Testing React with Kent C. Dodds and Jack Franklin (youtube.com)
    Aug 28, 2018
    Test React components in complete isolation, in integration, or a mix of the two? Jack and Kent will discuss their differing opinions about Testing React applications and why they have come to their conclusions.
    Stepping through React's code for lifecycles and setState (youtube.com)
    Aug 23, 2018
    Let's pop open the debugger and see what React is doing when it calls our lifecycle methods and when we call setState.
    Create a "from-html-testing-library" using dom-testing-library (youtube.com)
    Aug 20, 2018
    There's an interesting new library called "from-html". Let's see what it'd be like to create a from-html-testing-library :)
    Debug React's Event System (youtube.com)
    Aug 10, 2018
    In my efforts to understand React's event system and how it relates to real browser events (so I can fire real browser events to call event handlers), I learned a few things you may find interesting :)
    Simply React (youtube.com)
    Aug 09, 2018
    One of the things I love about React is how easy it is to encapsulate UI code into a component. I love this because it makes reuse of those components easy. But is it simple? I've made my fair share of components that had to accept a bunch of props to handle a growing list of different use cases resulting in a complex render function full of conditional statements and a confusing API for people using this "reusable" component.
    Debug Jest Tests (youtube.com)
    Aug 09, 2018
    Sometimes it's just really nice to step through your code line-by-line. Here we'll cover how you can run your jest tests in Chrome's DevTools using node --inspect-brk.
    Test React Portals (youtube.com)
    Aug 07, 2018
    How to Test React components that use React.createPortals
    What is MDX (youtube.com)
    Aug 06, 2018
    I've recently taking a big liking to MDX: A JSX in Markdown loader, parser, and renderer for ambitious projects. It combines the readability of Markdown with the expressivity of JSX. The best of both worlds.
    Simply React (youtube.com)
    Jul 28, 2018
    One of the things I love about React is how easy it is to encapsulate UI code into a component. I love this because it makes reuse of those components easy. But is it simple? I've made my fair share of components that had to accept a bunch of props to handle a growing list of different use cases resulting in a complex render function full of conditional statements and a confusing API for people using this "reusable" component.
      Make a stateful react component without a class (youtube.com)
      Jul 25, 2018
      This is a demo of Ryan Florence's brilliant @reactions/component
        How to test Redux (youtube.com)
        Jul 18, 2018
        Do you test actions, reducers, selectors, and components in isolation as unit tests? Or do you test the connected components with the actual store wired up as integration tests? Here are my thoughts.
        Implementing Control Props in custom React Components (youtube.com)
        Jul 12, 2018
        This is a livestream of part of my Advanced React Component Patterns in Portland at ChainReactConf 2018.
        Avoid setState warnings on unmounted React components (youtube.com)
        Jul 05, 2018
        If you're doing any async stuff in your React component and the callback calls this.setState, you need to either cancel the async stuff or take care to not call setState if the component is unmounted.
        Intro to ReasonML Syntax from a JavaScript perspective (youtube.com)
        Jul 03, 2018
        I'm a total ReasonML noob, but I'm interested in learning. So here's me, learning :)
        Use React with an index.html and script tags (youtube.com)
        Jun 29, 2018
        Getting started with React doesn't have to be complicated. Let's get up and running with React using nothing but an index.html file and our web browser!
        Component Unit Testing (and mocking) with react-testing-library (youtube.com)
        Jun 22, 2018
        Lots of people make the assumption that react-testing-library is good for React component integration testing, but not very useful for unit testing because it (intentionally) doesn't support shallow rendering. Let's see how you can do unit testing with react-testing-library
        Make jest run anything (youtube.com)
        Jun 20, 2018
        Jest is more than a testing framework. It's a platform. And you can make it run just about anything for you.
        render React Components with react-testing-library (youtube.com)
        Jun 19, 2018
        Now there's only one way to do it, but it can be customized to suite your needs.
        Creating an autocomplete component with downshift (youtube.com)
        Jun 13, 2018
        Just going to build an autocomplete component with downshift for funzies.
        Simply React - OpenWest 2018 (youtube.com)
        Jun 08, 2018
        There are patterns that have emerged in React that allow you to promote code reuse without sacrificing the simplicity or flexibility of the component. In this talk we’ll go over 5 of these patterns that will make your React components more useful.
        Use React Portals to build a Modal (youtube.com)
        Jun 01, 2018
        Learn how to build a modal with React Portal.
        Enable dynamic Hot Module Replacement with Webpack (youtube.com)
        May 24, 2018
        This is an example of how you can implement hot module replacement with require.context.
        Test Driven Development with react-testing-library (youtube.com)
        May 22, 2018
        The react-testing-library is a very light-weight solution for testing React components.
        Use React DevTools (youtube.com)
        May 14, 2018
        This is a quick intro to react devtools.
        Advanced React Component Patterns workshop @ PayPal (Part 2) (youtube.com)
        May 12, 2018
        Making React components that can be used in multiple places is not hard. What is hard is when the use cases differ. Without the right patterns, you can find yourself with a highly complex component that requires a lot of configuration props and way too many if statements. With this course, you'll not only learn great patterns you can use, but also the strengths and weaknesses of each so you know which to reach for to provide your components the flexibility and power you need.
        Confident React (youtube.com)
        May 10, 2018
        Let's rethink what it means to ship applications with confidence and what it takes to get there. With improved tools and practices, we can be more certain that what we're shipping to our users will work the way it's intended.
        5 Patterns to make your React Components more useful (youtube.com)
        Apr 11, 2018
        This is a livestream/recording of a (remote) talk by me at Phoenix ReactJS.
        Converting a component to a render prop (youtube.com)
        Mar 26, 2018
        I have a component that needs to have three visual difference implementations, so I decided to make it a render prop component.
        Testing Practices and Principles Workshop - Assert.js Conf (youtube.com)
        Mar 22, 2018
        This is a recording from my laptop at the Assert.js conference workshop.
        Write tests. Not too many. Mostly integration. Talk Practice at UtahJS (youtube.com)
        Jan 05, 2018
        Automated tests are an important part of raising your confidence when releasing software. They can speed you up or slow you down depending on how you write them and which form of testing you focus your test writing on. In this talk, we’ll cover the value of automated testing and where your efforts should be focused to strike the best balance of confidence and effort.
        Use state in React (youtube.com)
        Oct 18, 2017
        We're going to build this stopwatch component. We'll start by hacking away at rerendering our whole app and passing props to it, then we'll migrate that mess to React state to make it clean and isolated.
        downshift: integrating geniejs with downshift (youtube.com)
        Aug 10, 2017
        I built geniejs as a side project over 3 years ago and I wanted to see what it would be like to integrate the smarts of geniejs with the experience of downshift. I was not disappointed!
        downshift: Downshift work build, preact support, and simplification (youtube.com)
        Aug 08, 2017
        Here I work on the rollup build, add support for preact out of the box, and simplify the API a bit.
        downshift: fixing regressions and more testing (youtube.com)
        Aug 08, 2017
        Got some great feedback and fixed some regressions, then added more tests.
        downshift: getting to 100% code coverage! (youtube.com)
        Aug 08, 2017
        This is the last bit of testing I needed to do to get to 100% automated code coverage!
        downshift: refactor, simplify, and test! (youtube.com)
        Aug 08, 2017
        I'm finally solidifying things and got a bunch of tests written.
        downshift: testing utils (youtube.com)
        Aug 08, 2017
        In this one I write tests for pure functions as well as mocking out DOM APIs. It's pretty wild.
        downshift: Making controllable with state props (youtube.com)
        Aug 07, 2017
        This feature is one of the things that gives you ultimate control with downshift. It allows you to control and be notified of any internal state changes. I think it's pretty legit!
        downshift: Making Downshift more accessible (youtube.com)
        Aug 07, 2017
        Here I work on some feedback I got from Marcy Sutton on the accessibility of downshift.
        downshift: Implementing a React Autocomplete Component for PayPal with downshift (youtube.com)
        Aug 02, 2017
        I actually spend way more time just styling it than using the downshift APIs, but I think that's kinda the point. The downshift APIs are tiny. Enjoy!
        Maintainable CSS in React (youtube.com)
        Jul 20, 2017
        This is a recording of my screen during my talk at the internal conference [email protected] on July 20th 2017. I talk about CSS in JS and how it can help us with css in applications.
        Concerning CSS in JS (youtube.com)
        May 23, 2017
        I no longer care about: specificity, CSS linters, CSS preprocessors, vendor prefixing, removing unused CSS, finding CSS dependencies and dependents. I now care more about: whether it’s fast enough, whether it’s small enough, whether it’s familiar enough. These are some of my trade-offs. Because I use CSS-in-JS.
        JavaScript & React Testing with Jest (youtube.com)
        Sep 08, 2016
        Jest has become one of the coolest things in testing JavaScript and React. In recent months, the Jest team has made huge strides with the testing framework and it's a pretty amazing tool.
        React events in depth w/ Kent C. Dodds, Ben Alpert, & Dan Abramov (youtube.com)
        Sep 01, 2016
        Based on a recent pull request in the React repo (https://github.com/facebook/react/pull/7616) it was suggested that we chat about how events in React work. Ben and Dan were eager to have this conversation with me :)

        Courses & Video Series

        One Day Introduction to React with Kent C. Dodds (thinkster.io)
        Feb 24, 2019
        This course is ideal for those looking to get a better understanding of React fundamentals. In just a matter of hours, you'll complete this workshop knowing what problems React can solve for you and how it goes about solving them. You'll work right alongside React expert Kent C. Dodds as he guides you through using JSX to code through real-world exercises and on to knowledge that will make you more productive at building apps with React.
        Simplify React Apps with React Hooks (egghead.io)
        Dec 03, 2018
        In this course, Kent will take a modern React codebase that uses classes and refactor the entire thing to use function components as much as possible.
        Advanced React Component Patterns (egghead.io)
        Jun 01, 2018
        The goal of this course is to give you the knowledge of advanced patterns you can use to make React components that are more flexible, simpler, and more fun to build, use, and maintain.
        Testing React Applications, v2 (frontendmasters.com)
        May 13, 2018
        Learn to catch errors before they reach the end user with automated tests!
        Advanced React Component Patterns Workshop @ PayPal (youtube.com)
        May 11, 2018
        With this course, you'll not only learn great patterns you can use, but also the strengths and weaknesses of each so you know which to reach for to provide your components the flexibility and power you need.
        Advanced React Patterns (frontendmasters.com)
        May 02, 2018
        In this course, Kent C. Dodds shows how to separate component logic, state and display properties to make your components more flexible and usable across large React applications.
        The Beginner's Guide to React (egghead.io)
        Dec 04, 2017
        This course is for React newbies and those looking to get a better understanding of React fundamentals.
        Testing JavaScript Applications (feat. React and Redux) (frontendmasters.com)
        Jun 20, 2017
        Create automated testing so you can be sure you’re maintaining the highest quality JavaScript applications possible!