Four Things I've Changed My Mind About in Engineering

I think a mark of a great engineer is being willing to change one’s mind when presented with new information. Here are four technological things I’ve changed my mind about. ...

May 29, 2025

How I Approach Feature Requests

Receiving feature requests is part of running a software team. Here’s how I handle them. ...

May 14, 2025

Don't Guess

This is a response to “Don’t Guess” from the excellent “The Best Programmers I Know” by Matthias Endler. My goal is to crystallize my understanding of this trait. ...

April 29, 2025

Your Software Is Confusing

If something in your software is confusing to a customer, it is confusing. ...

April 7, 2025

Why I'm "All In" on TypeScript

I’ve added TypeScript to several projects I’ve worked on. In this post, I’d like to discuss why I think TypeScript is essential and document my expectations around it. ...

March 26, 2025

"Hit It Twice" Customer Service

I recently learned a practice for customer communication that I’d like to document. It’s called “Hit It Twice.” ...

March 4, 2025

It's Tradeoffs All the Way Down

One common trait among early-career programmers is seeing technology choices in black-and-white. I’ve been there. “Redux is awesome!” “Nested ternaries are terrible!” As you advance as a programmer, for better or worse, you start to see almost everything as a trade-off. ...

February 19, 2025

How I Organize a Meetup

I’ve been organizing Meetups for a decade, starting with Vim Chicago and Chicago Elixir, and now running Maine JS from Portland, Maine. In honor of our most recent Meetup, here’s a list of my favorite organizer tips. ...

February 3, 2025

My Annual Review 2024

Here’s my annual review covering 2024. ...

December 31, 2024

Hard-Won Software Development Habits

This post is about how to write software well. It was inspired by this post with a similar title. Read it and write yours. ...

November 27, 2024

Don’t miss my next essay

Hear from me immediately when I post: no ads, unsubscribe anytime.