Docker from Scratch: Shrink Your Images With Multi-Stage Builds

Use multi-stage Dockerfiles to separate build tooling from your runtime image, cutting image size by 90% or more.

March 3, 2026 · 5 min · Russell

Docker from Scratch: Writing Your First Dockerfile

Learn Dockerfile basics — FROM, COPY, RUN, CMD — and build your first container image.

March 2, 2026 · 5 min · Russell

Fix CLI Browser Hangs in WSL

Use BROWSER=echo to prevent CLI tools from hanging when they try to open a browser in WSL.

February 27, 2026 · 2 min · Russell

Pin Agent Chats in Cursor to Keep Important Conversations Accessible

Keep your most useful AI agent conversations at the top of the list with Cursor’s pin feature.

February 27, 2026 · 2 min · Russell

Start developing with Laravel on Ubuntu 24.04 LTS

Get from Ubuntu 24.04 LTS to a running Laravel 12 app using the official installer first, then the DDEV option for container-based workflows.

February 22, 2026 · 2 min · Russell

coaudit: AI-Powered Code Audits with GitHub Copilot CLI

A CLI that runs structured code audits using GitHub Copilot across dead code, architecture, selectors, routing, tests, and observability.

February 15, 2026 · 5 min · Russell

Using Laravel Boost With DDEV

Set up Laravel Boost as an MCP server inside DDEV, with a WSL configuration for Windows users.

February 10, 2026 · 2 min · Russell

Drift in Cursor AI Rules

Learn how to prevent drift in Cursor AI rules to maintain accurate and relevant AI-assisted development workflows.

June 19, 2025 · 2 min · Russell

CORS: Understanding Cross-Origin Resource Sharing

Learn what CORS is, why it’s essential for web security, and how to implement it properly in your applications.

May 16, 2025 · 2 min · Russell

PSR-20: Clock Interface in PHP

Learn how PSR-20’s Clock interface makes time-dependent code testable and predictable by abstracting PHP’s time functions.

April 20, 2025 · 7 min · Russell