All Articles

Using Git Bisect To Find Where A Bug Started

Feb 6, 2021

Have you ever found a bug in your app and wondered how it got there in the first place? If you can test for the bug—either manually or with a test suite—you can find the exact commit where it started with git bisect. By reducing the surface area to a single commit, it’s much easier to find the root cause of a bug.

Read More

How tldr Is Your Own Personal Command Line Tutor

Jan 28, 2021

If you’re new to the command line, figuring out how to use each command—rm, tar, du—can be hard. Even if you’re not new, the usage is easy to forget. The man pages aren’t always clear and don’t always have good examples. Luckily, there’s a tool that acts as your own personal tutor for the command line—tldr, which stands for “too long; didn’t read.” In this article I’ll explain how to use it and show some cool examples.

Read More

Why Tailwind Is The Best Choice For Custom CSS

Jan 25, 2021

Most of the CSS code bases I have worked with followed a similar pattern. At first, they were clean and easy to understand. But they always turned into a nightmare to maintain. Developers weren’t comfortable making changes to the CSS for fear of breaking the HTML in another part of the app. I have tried various solutions like Bootstrap, BEM, SMACSS, and others, but they always ended up in the same place: spaghetti CSS that was hard to work on.

Tailwind is a new kind of CSS framework that directly addresses the hard-to-maintain aspect of CSS. It’s also easy to customize, enforces consistency in your design, and helps keep your CSS bundle size small.

Read More

Saving A PostgreSQL Query Result As A CSV

Jan 10, 2021

Sometime during your career as a developer, you’re going to want to save a SQL query’s result as a CSV. Most of the time you will be happy with the default table format that databases show results in. When you’re working with small amounts of data or if you’re just looking at it yourself, this is fine. But if you want to browse through large amounts of data or if your non-developer boss starts wanting to see the data, saving it to a CSV file is a great choice.

Read More

How To Make Your Terminal Amazing

Sep 22, 2020

I’ve helped a lot of people set up their terminals for development. I usually give my recommendations and then leave people to figure out a terminal setup that works for them. But many times when I work with them later, I find out they’re using the default Mac Terminal app with no customization at all.

It hurts to see, because your command line can be made so much better with just a little tinkering. I don’t think that I have the best terminal setup in the world. But I strongly believe it’s better than the default experience on a Mac. If you want to get really comfortable with the command line—and all developers should be—this is the place to start.

Read More

Customizing Vim For Writing With Goyo

Aug 26, 2020

Recently I’ve been wanting to write more. I’m just starting as a writer, but I have a lot of experience as a software developer, so a tech blog seemed like a natural fit. I like simplicity—in software and in life—so I wanted to keep the tools that I use to a minimum. I use Vim daily to work on software, so I started using it for writing too. But it didn’t take long to realize that my Vim setup for development wasn’t suited to writing. I spent some time working on my Vim configuration and now I have a serviceable tool for writing.

Read More