Writing
18 articles on engineering, tooling, and the craft of building software.
Articles are grouped by the year they were written, like release versions. Anything before 2024 is marked legacy: still correct in spirit, but check the date before copying code.
Featured and popular#
All articles by version#
18 of 18 articles
v2026
current5 docsDemystifying awk
A practical introduction to awk for printing fields, filtering rows, formatting output, and writing useful one-liners.
17 Side Projects I Built With Claude Code in Two Months
A look at 17 side projects I built in about two months with Claude Code -- from TUI apps in Rust and Go to browser games and AI agent tooling.
Demystifying Git Worktrees
Learn how to work with multiple Git branches simultaneously using worktrees - a powerful feature that lets you check out different branches as separate folders while sharing Git data.
Common React Hooks Antipatterns and Gotchas
Learn about common React Hooks antipatterns and how to avoid them for better code quality.
The Simplest CSS Grids
Learn the most common CSS Grid layouts with copy-pastable examples for two-column layouts, sidebar navigation, and more.
v2025
maintained1 docsDemystifying ffmpeg
The basics of ffmpeg
v2024
maintained4 docsConstants vs Enums in TypeScript
TypeScript tips and tricks
Build React UI Library (notes)
Notes on building a React UI library.
Where did my blog go?
A statement on where my extensive blog has gone.
Throwback Thursday -- The Site Through Time
A look at the site through time, from its inception to now.
v2020
legacy5 docsDemystifying the Find command
The Find command made simple
Using Postgres FOR loop to generate data
I don't know about you but I often need a 100 of something in my database to properly test a page. Here's how to use Postgres FOR loops to generate test data quickly.
Demystifying GREP
Cheatsheet: search for a keyword in a file
Demystifying Rsync
Rsync made simple
Demystifying the TAR command
The cheatsheet for tar
v2018
legacy2 docsHow to "grep" in PowerShell
New to PowerShell? Here's how to "grep" using built-in PowerShell utilities.
How I Structure My JavaScript File
Check out my practices and recommendations on writing JavaScript files that I've learned through writing JavaScript for years.
Try a shorter term, or clear the filter to see all 17.
Digital Garden#
Engineering, opinions, deep-dives, and everything in between. Latest: 17 Side Projects I Built With Claude Code in Two Months →

17 Side Projects I Built With Claude Code in Two Months
From TUI apps in Rust and Go to browser games and AI agent tooling.

I Built an AI-Friendly UI Pattern Library
A UI pattern library where every pattern ships the prompt that rebuilds it, so a coding agent can put it in your codebase instead of you copying CSS.
Demystifying Tools#
Practical walkthroughs of common command-line tools and utilities.

Demystifying awk
A practical introduction to awk for printing fields, filtering rows, formatting output, and writing useful one-liners.

Demystifying Git Worktrees
Learn how to work with multiple Git branches simultaneously using worktrees - a powerful feature that lets you check out different branches as separate folders while sharing Git data.
Series#
| Series | Collection | Parts | Status |
|---|---|---|---|
| I, AI | AI Stories | 3 of 5 | in progress |



