How I Teach
A programmer shares his evolved teaching philosophy, emphasizing techniques from 'Make It Stick' to improve long-term knowledge retention.
KentCDodds.com is the personal website and blog of Kent C. Dodds, a software engineer, educator, and open-source contributor known for his work in the React ecosystem. He writes about modern web development, testing, accessibility, performance, and developer experience, focusing on how to build reliable, maintainable, and scalable applications. Kent is the creator of popular libraries such as Testing Library and Remix, and his articles often highlight practical approaches to writing better React components, handling state, and improving user experience. Beyond tutorials, the site features courses, workshops, podcasts, and conference talks, all aimed at helping developers learn by doing. With his teaching-first philosophy and clear explanations, KentCDodds.com has become one of the most trusted learning resources in the React and JavaScript community.
189 articles from this blog
A programmer shares his evolved teaching philosophy, emphasizing techniques from 'Make It Stick' to improve long-term knowledge retention.
Explains why nesting in tests, especially with beforeEach hooks, leads to unmaintainable code, using a React component as an example.
Analyzes when React's useCallback and useMemo hooks actually improve performance versus when they add unnecessary overhead.
Explains a React optimization trick to prevent unnecessary re-renders by passing stable element references.
The article argues for co-locating code comments with the relevant code, explaining the maintainability and clarity benefits over separate documentation files.
Explains why UI components should only serve end users and developers, and how testing implementation details creates a problematic 'test user'.
A guide to simplifying React app authentication by conditionally rendering components based on user state.
Explores the AHA (Avoid Hasty Abstraction) principle for writing maintainable tests, contrasting it with overly abstract and non-abstract approaches.
A guide on shifting testing focus from code coverage to use case coverage to build confidence in applications.
A beginner's guide to starting programming by focusing on solving a personal problem rather than just learning code syntax.
A guide on enabling React Strict Mode, explaining how it identifies unsafe code patterns and provides helpful warnings for developers.
Kent announces he is becoming a full-time educator, focusing on creating developer workshops, courses, and content.
A guide to creating accessible web forms using proper HTML labeling techniques to ensure usability for keyboard and screen reader users.
A long-time blogger explains his decision to migrate his content from Medium to his own self-hosted blog platform for greater control and ownership.
The author reflects on their 2018 accomplishments, including creating React Testing Library and writing a novel for NaNoWriMo.
Explains the array destructuring syntax used in React's useState Hook, showing how to understand and 'de-sugar' the syntax.
Explores how cultivating gratitude and a positive attitude can improve problem-solving and outcomes for software developers.
Explores the future of React render props with the rise of Hooks, comparing implementations and arguing both have a place.
Explores the evolution of React Context API and how new features like Hooks simplify consuming multiple contexts in components.
How to refactor React tests to avoid breaking when migrating class components to function components with Hooks.