Late Night
Development

Notes from the intersection of architecture, code, and real operations.

Written after hours. Built for clarity.

A Beginner's Guide to Docker, Podman, and Practical Containers

ANNOUNCEMENT

New Series In The Works!

Containers can feel like one of those topics everyone expects you to already understand.

Docker. Podman. Images. Containers. Volumes. Compose. It is easy to get lost in the vocabulary before you ever build something useful.

I’m starting a new beginner-friendly series in the From Laptop to Production collection: A Beginner’s Guide to Docker, Podman, and Practical Containers.

This series is for developers, technical leaders, and curious builders who want a clear, practical foundation—what containers are, why they matter, how Docker and Podman compare, and how to use them to make local development more repeatable without turning every project into an infrastructure project.

No hype. No unnecessary complexity. Just a useful path from “I keep hearing about containers” to confidently using them in real work.

Late Night DevelopmentDockerPodmanContainersDeveloper ExperienceDevOpsSoftware Development
02

AI DEVELOPMENT

AI Coding Tools Are Not Pair Programmers. They Are Junior Systems With Tools

A practical operating model for using AI coding agents without handing them more trust than the work can support.

Sep 15, 2026 · 7 min

01

AI DEVELOPMENT

Developing With AI: From Prompt to Pull Request

An introduction to a practical AI development system built around scope, context, verification, review, and durable reasoning.

Sep 8, 2026 · 6 min

10

ARCHITECTURE

The Reference Architecture: A Reusable Blueprint for Your Next Product

The full containerized delivery system from this series, generalized into a repeatable reference structure for the next project.

Aug 23, 2026 · 9 min

09

DEPLOYMENT

Staging and Production on Fly.io: A Practical Release Path

Separate Fly.io apps for staging and production, deploy commands that survive a cold-starting database, and a rollback path that does not require panic.

Aug 16, 2026 · 9 min

08

SECURITY

Secrets, Environments, and Deployment Security in GitHub Actions

Environment protection rules, least-privilege tokens, and secret hygiene that keep a small team's deploy pipeline from becoming its biggest liability.

Aug 9, 2026 · 9 min

07

DATABASE

Database Migrations Without Panic: Local → Preview → Staging → Production

A backward-compatible migration discipline that turns schema changes from a source of dread into a routine, checkpointed step.

Aug 2, 2026 · 9 min

06

PREVIEW ENVIRONMENTS

Pull Request Preview Environments: Review the Actual Change

Why a passing CI run is not the same as reviewing a change, and how an ephemeral deployment per pull request closes that gap.

Jul 26, 2026 · 8 min

05

CI/CD

Your First GitHub Actions Pipeline: Lint, Typecheck, Test, Build

A practical continuous integration workflow that mirrors the local commands developers already run, with caching and feedback fast enough to trust.

Jul 19, 2026 · 9 min

04

GITHUB WORKFLOW

Designing a GitHub Workflow That a Small Team Will Actually Use

Branch protection, pull request conventions, and repository layout that hold up under real deadlines instead of collapsing into exceptions.

Jul 12, 2026 · 8 min

03

DEV CONTAINERS

Dev Containers: Put the Developer Setup in the Repository

How .devcontainer/devcontainer.json turns a written onboarding guide into an executable, versioned workspace that any editor can open.

Jul 5, 2026 · 8 min

02

DEV ENVIRONMENT

Build a Real Dev Environment: Next.js, TypeScript, PostgreSQL, and Docker

A lean, repeatable local stack for a modern web application—with clear boundaries between local development and production.

Jun 28, 2026 · 9 min

01

ARCHITECTURE

Why "Works on My Machine" Is an Architecture Problem

A practical case for treating the development environment as a versioned part of the product—not a collection of laptop-specific habits.

Jun 21, 2026 · 8 min

No spam. Unsubscribe anytime.