This site runs best with JavaScript enabled.

Stop Writing Mocks

Overview The point of testing is to tell us when our code breaks so that we can make changes to our code confidently. Many are familiar with the testing pyramid. The idea is that as you go up the testing pyramid you are getting tests that more closely resemble how a user uses your software but are…

Read →

Limiting States

Limiting State State management is hard. This major reason for this is the effects of combinitorial explosion . In this article I want explore how we can limit the effects of combinitorial explosion thus making state easier to manage and our apps simpler. Modeling State Most developers spend little…

Read →

Using CSS Grid in IE11

CSS Grid Most web apps use a grid system to control their layouts. A grid system is a way of splitting a web page into a set of columns, usually 12 and using that as the base of your page layout. This pattern is so common that it became standardized as CSS Grid Layout . Browser Compatibility and…

Read →

Automating Your Style Guide

Becoming Productive in New Projects In any large organization there is often a desire to be able to move engineers between teams and projects. Having a consistent coding style will often make that easier. Ryan Hansen One main reason this is true is because joining a new project is largely an…

Read →

Referential Equality in React

The problem Last week I was helping out a co-worker with a bug they were experiencing. While building a custom hook they were retrieving some data, manipulating that data and setting state. Even though their logs were showing the data was updated, the component wasn't rendering what was being logged…

Read →