This site runs best with JavaScript enabled.
Looking for something specific? Search for a blogpost here.

React Hooks: Compound Components

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: https://youtu.be/415EfGPuhSo?list=PLV5CVI1eNcJgCrPH_e6d57KRUTiDZgs0u If you're unfamiliar with compound components…

Read →

🚨 Big Announcement: I'm a full-time educator! 👨‍🏫

I've been teaching for as long as I can remember. I talk about this a lot in "Why and How I started public speaking" , but just know that I have a love of teaching, I've done it a lot, and I want to do more. This is why I'm excited to announce that I've gone full-time educator! What does this mean…

Read →

Should I useState or useReducer?

Whenever there are two things to do the same thing, people inevitably ask: "When do I use one over the other?" For example "When do I use useEffect and useLayoutEffect ?" Or "When do I use Unit, Integration, or E2E tests?" Or "When to use Control Props or State Reducers?" I think useState…

Read →

Intentional Career Building

I've been thinking a lot about this newsletter and what I want to do with it. One thing I want to do is provide you with some specific ideas of things you can do to improve your skills and get what you want out of your career. So today I'm going to give you a few ideas of things you can do to be…

Read →

Please stop building inaccessible forms (and how to fix them)

Note, today's blog post is very heavily inspired by the Labeling Controls tutorial from w3.org . HTML is accessible by default. This is true, with the important caveat that when you use semantic HTML properly, what you've built will be accessible. Now, there are lots of ways that you can mess…

Read →

Static vs Unit vs Integration vs E2E Testing for Frontend Apps

In my interview "Testing Practices with J.B. Rainsberger " available on TestingJavaScript.com he gave me a metaphor I really like. He said: You can throw paint against the wall and eventually you might get most of the wall, but until you go up to the wall with a brush, you'll never get the…

Read →

2018 in Review

Whether you've had a great 2018 or not, I think it's important to look back and reflect on your accomplishments for the year. You've probably done more than you think you have. In this newsletter, I'm going to share with you some of my professional (and unprofessional) accomplishments of which I'm…

Read →