- 
  
You're all staff engineers now
As writing and re-writing code becomes commoditized, staff engineer-type work will become the norm and not the exception.
 - 
  
GraphQL SDL makes good on UML's broken promise
GraphQL and UML are very different in practice, but GraphQL solves a lot of problems that UML tried to deal with decades ago through its Schema Definition Language. Why did GraphQL succeed where UML failed?
 - 
  
Software ate the world; what's AI going to do to software?
Under the hood, the AI era can be understood as the migration of users from producer-published software to platform-published software. The specifics of how that happens have massive implications for our everyday lives. What do we do now?
 - 
  
How to move from LastPass to Bitwarden in ten minutes
LastPass recently changed their products and pricing. For those in search of an alternative, switching to Bitwarden can be done surprisingly quickly. This is a quick summary of how I moved all my password data and set up autocomplete on my iPhone in a few minutes.
 - 
  
Snow removal tasks as a kanban board
Copy-able public kanban board that captures snow removal tasks for what I reckon is a typical single-family dwelling with a driveway and/or sidewalk in North America.
 - 
  
Rubber Ducking: Transitional ESLint Configs
My guest appearance on the Rubber Ducking podcast with Chris Schmitz and Spencer Miskiovak
 - 
  
A low-friction way to do TDD with React
Use React Testing Library if you like to write the tests first.
 - 
  
Using Git to run ESLint on changed files in a feature branch
TIL how to run static analysis only on files that have been changed in a feature branch, and it's helping us roll out new rules with minimal disruption.
 - 
  
Pop-Punk: a vim color scheme
A brief introduction of my first vim color scheme
 - 
  
Principles for an Effective Distributed Team
It's 2020 and people work from home. These principles have helped my teammates and I do good work together despite not being colocated.