Recent Articles

Linting Markdown files with markdownlint

Apr 5, 2023 · 2 min read

Markdown's syntax is easy to learn, and even though the syntax is forgiving, linting can help you avoid unexpected issues.

Bash Environment Variable Defaults

Apr 5, 2023 · 3 min read

Bash scripts can set defaults for environment variables that are optionally supplied at execution time.

Hash a String to a Number in Bash

Mar 5, 2023 · 2 min read

Sometimes you need to turn a stable string ID into a stable number ID, and it's relatively easy to do in Bash.

Installing npm Packages From GitHub

Feb 23, 2023 · 2 min read

Installing packages from GitHub is a great way to test them before publishing.

Reporting Lerna Monorepo Test Coverage to Codecov

Feb 20, 2023 · 3 min read

It's not straightforward, and you likely can't use preexisting CI tasks.

Migrating Existing Repos to a Lerna Monorepo

Feb 20, 2023 · 9 min read

As of writing, I maintain 15 Metalsmith plugins, and it has become a pain to manage all of them independently.

Automatically Execute Code Before & After Unix Commands

Jan 19, 2023 · 4 min read

It can be helpful to run some code automatically before or after calling a command, and it is easy to accomplish with shadowing functions.

Calculating Table Size in MySQL

Sep 15, 2022 · 2 min read

Knowing how much disk space individual tables take up is important for DB maintenance and debugging, and it can be accomplished with a single query in MySQL.

Your Standup is Too Long

Aug 8, 2022 · 8 min read

The Agile Alliance recommends 15 minutes every day, I would recommend even shorter and less often.

Building Team Connection with Personal Fist to Five

Aug 7, 2022 · 4 min read

Fist to five is a technique for gauging consensus on a prompt, but it can also be used to build connections within teams.

The Dangers of OFFSET With MySQL

Jul 28, 2022 · 15 min read

Large limit offsets degrade the performance of most databases, but it is especially egregious in MySQL.

Creating a Java REPL Playground in Docker

Jul 3, 2022 · 3 min read

It's helpful to have local throwaway environments for testing code snippets, and creating one for Java is a snap with Docker.