Blog


The Code Review Habit That Makes Every PR Better

July 24, 2026

The Code Review Habit That Makes Every PR Better

A few years ago I submitted a PR that I was proud of. It was a clean refactor with tests covering the whole change. My senior dev reviewed it within the hour and left exactly one comment: "Is this...

Read

Weekly Digest - July 20, 2026

July 20, 2026

Weekly Digest - July 20, 2026

Three this week: a small fix for a big code review headache, an intro to loop engineering, and the real reason most podcasts fade out. A three-emoji system for tagging review comments: 🔥 for...

Read

Stop Guessing What Your Code Review Comments Mean

July 17, 2026

Stop Guessing What Your Code Review Comments Mean

You've just gotten a code review back with fifteen comments. Some say things like "what about X?" or "have you considered Y?" and you have no idea whether you need to act. Are they flagging a real...

Read

Weekly Digest - July 13, 2026

July 13, 2026

Weekly Digest - July 13, 2026

Three again this week: a new HTTP verb worth knowing, a Claude Code tweak that pays for itself, and a reframe on creative discipline. GET and POST both fall short for complex search because GET...

Read

Customizing Your Claude Code Status Line

July 10, 2026

Customizing Your Claude Code Status Line

I've had a nasty habit of hitting my Claude session limit right in the middle of something "important". Not where I would like to, at something like a natural stopping point, but right in the middle...

Read

Weekly Digest - July 6, 2026

July 6, 2026

Weekly Digest - July 6, 2026

Three things this week: a Laravel utility worth knowing, a workflow for parallel AI agents, and a surprisingly practical trick for fighting creative resistance. Email-based onboarding breaks down...

Read

Generating Secure Initial Passwords in Laravel with Str::password()

July 3, 2026

Generating Secure Initial Passwords in Laravel with Str::password()

A client came to me with an interesting constraint. They were building an app where some users didn't have email addresses. That's not unusual in certain industries where you're onboarding workers...

Read

Weekly Digest - June 29, 2026

June 29, 2026

Weekly Digest - June 29, 2026

Three things from this week: creator systems, PHP development practices, and a coding style debate that refuses to die. If you create content consistently, a single bad week can quietly become a...

Read

Tabs vs. Spaces: Who Cares

June 26, 2026

Tabs vs. Spaces: Who Cares

I once had a pull request sit open for three days. Not because the logic was wrong, not because the tests were failing, but because two developers could not stop arguing about whether I should be...

Read

Weekly Digest - June 22, 2026

June 22, 2026

Weekly Digest - June 22, 2026

Summer is finally here! I wrote a LinkedIn post about ORMs and got some pushback. The most common objection was that if you skip Eloquent and you're opening yourself up to SQL injection. That's...

Read