Vim Scratchpad Part 2

Today, I’d like to dive deeper into a part of my practice: using a persisted text file for jotting things down. In this post, I’ll explain the ‘why’ behind this technique, and provide an updated version of it. ...

October 26, 2022

Buy the Best Hardware You Can

Some advice I offer people entering the programming profession is to buy the best hardware you can. You’re going to need it. ...

October 25, 2022

Solving Exercism's Resistor Color Duo in TypeScript

Today as a code kata I completed the ‘Resistor Color Duo’ TypeScript exercise on Exercism. Here’s my work. ...

October 24, 2022

Print Last Exit Code

The exit code of a command in a Unix-based system is an important and easy-to-miss piece of data. It isn’t printed to standard out; you have to go looking for it. I find it useful to inspect this information when debugging or considering chaining unfamiliar commands. ...

October 21, 2022

You Can't Change Nothing

I saw a meme this week: a person debugging code, “My code doesn’t work. Let’s change nothing and run it again.” This is something that I’ve done. It seems pointless. But that’s not quite correct. ...

October 21, 2022

Read the Docs

When learning a new language or framework, the first thing I do is read the official documentation cover-to-cover. ...

October 19, 2022

Why Do I Have to Use the Factorybot Gem, Again?

The FactoryBot gem, previously known as FactoryGirl, is ubiquitous in Ruby and Ruby on Rails testing. If you aren’t familiar with it, you might be wondering, what’s the point? Wouldn’t it be simpler to just build objects myself? ...

October 17, 2022

Default to Programming Convention

Trying to enforce unconventional coding preferences on a team is an uphill battle. When in doubt, default to convention. ...

October 14, 2022

Recommended Reading

Here are some books that have helped me understand programming. This list is a living document that I plan to update as I read. ...

September 28, 2022

How to Introduce New Ideas

How do you introduce new ways of working? We want to bring a new idea to our engineering teams, such as a new command-line configuration, testing tool, or design pattern. But engineers can be discerning and stubborn customers. The idea needs to stand on its own. And, you have to sell it. ...

September 8, 2022