Docker Tutorial #8: Docker for Development — A Better Dev Environment

“Works on my machine” is a classic developer problem. One developer runs Python 3.11, another runs 3.13. One uses PostgreSQL 15, another uses 16. The app behaves differently on every machine. Docker solves this. With Docker, your entire development environment — app, database, cache, message queue — is defined in a YAML file. Every developer on your team runs identical environments with one command. Why Use Docker for Development? Consistent environments — everyone runs the same versions of everything No installation required — no need to install PostgreSQL, Redis, or Node locally Easy onboarding — new team members run docker compose up and have everything Clean isolation — each project has its own versions, no conflicts between projects Production parity — dev environment matches production as closely as possible The Development Compose Pattern A common pattern is to have two Compose files: ...

June 24, 2026 · 6 min

Building a CLI Tool with AI — From Idea to Published Package

Enough theory. Let us build something real. In this article, you will build a complete CLI tool using AI — from the initial description to a published package on PyPI. Every prompt, every AI response, and every manual fix is shown. You will see where AI excels, where it struggles, and how to handle both. The project: linkcheck — a markdown link checker that scans your documentation files and reports broken links. It is a small, useful tool with enough complexity to show real patterns. ...

June 24, 2026 · 11 min

Build a CLI Todo App in 30 Minutes with Claude Code

Can you build a working CLI application in 30 minutes using only Claude Code? I tried it. Here is exactly what happened — every prompt, every mistake, and the final result. The goal was simple: start with an empty folder, talk to Claude Code in the terminal, and end up with a fully working todo app. No manual coding. Just prompts. Spoiler: it took 35 minutes, not 30. But the result was better than expected. ...

June 24, 2026 · 14 min

Docker Tutorial #7: Multi-stage Docker Builds for Production

A common mistake is shipping your entire build environment — compilers, package managers, SDKs — in your production Docker image. A Go application needs the Go compiler to build. But once it is built, the binary runs without Go installed at all. Why include 1 GB of Go tooling in an image that only needs a 10 MB binary? Multi-stage builds solve this. They let you compile your app in one container and copy only the final artifact into a minimal production image. ...

June 23, 2026 · 6 min

Multi-Agent Workflows — AI Teams That Code Together

One AI agent is powerful. Multiple AI agents working together are something else entirely. One developer tasked 16 Claude agents with building a Rust-based C compiler from scratch — one agent worked on parsing, another on code generation, another on optimization passes — all communicating and validating each other’s work. Multi-agent coding is no longer theory. Anthropic released Agent Teams in February 2026, and multi-agent system inquiries surged over 1,400% in the past year. By the end of 2026, 40% of enterprise applications are expected to include task-specific AI agents. ...

June 23, 2026 · 10 min

Debugging with AI — Fix Bugs 10x Faster

Debugging AI-generated code is a unique challenge. You are looking at code you did not write, understanding logic you did not design, and fixing bugs in patterns you did not choose. Traditional debugging skills still apply, but you need a different approach. Here is the uncomfortable truth about AI debugging: Claude Code almost never fails because it lacks intelligence. It fails because it lacks visibility. You have browser dev tools, console logs, network requests, and actual behavior on your screen. The AI has code files. That is it. ...

June 23, 2026 · 10 min

Docker Tutorial #6: Docker Volumes and Networking Explained

Containers are ephemeral. When a container stops, all data written inside it disappears. That is fine for stateless apps, but databases and file storage need to persist data. Docker solves this with volumes. And Docker solves container communication with networks. In this tutorial, you will learn both. The Ephemeral Container Problem When you run a PostgreSQL container and insert some rows, that data lives in the container’s writable layer. Stop the container, remove it, and start a new one — the data is gone. ...

June 22, 2026 · 6 min

AI Code Review — Catch Bugs Before They Ship

AI-assisted commits now represent 41% of all commits globally. That is a lot of code that humans did not write line by line. The question is no longer whether to use AI for code — it is how to make sure that code is good. AI code review is one of the fastest-growing practices in 2026. Anthropic recently launched Code Review in Claude Code — a multi-agent system that reads your pull requests, understands the full codebase context, and posts review comments that focus on logic errors, not style nitpicks. ...

June 22, 2026 · 10 min

AI-Powered Testing — Let AI Write Your Tests

Nobody likes writing tests. But everybody likes having them. AI coding tools have gotten surprisingly good at generating tests — and surprisingly bad at certain parts of it. The teams winning with AI in 2026 are not generating the most code. They are building processes to ship reliable code despite the fact that AI introduces roughly 1.7 times more bugs than humans, according to recent studies. Good test generation is a critical part of that process. ...

June 22, 2026 · 10 min

Docker Tutorial #5: Docker Compose — Run Multi-Container Apps

Most real applications are not just one container. A typical web app has: A web server (nginx) An API server (your app) A database (PostgreSQL) A cache (Redis) Running four separate docker run commands, connecting them manually, and managing their configuration is painful. Docker Compose solves this. What is Docker Compose? Docker Compose lets you define your entire application stack in a single YAML file. Then you start everything with one command: ...

June 21, 2026 · 6 min