Blog

Technical writing on Python, CLI design, Linux systems, and developer tooling.

April 1, 2026

Building a System Monitor CLI from Scratch

How I built sysmon — a real-time system monitoring tool using Python, Click, and psutil. Covers architecture decisions, per-core CPU sampling, terminal dashboard rendering, and why JSON output matters for composability.

Read more →
March 28, 2026

Designing CLI Tools That Play Nice with Unix Pipes

The Unix philosophy says tools should do one thing well and compose with others. Here's how I designed log-analyzer to support stdin streaming, structured output, and zero-config format detection — so it works naturally in shell pipelines.

Read more →
March 20, 2026

86 Tests, Zero Mocks: Testing CLI Tools with pytest

My approach to testing Python CLI applications without mocking everything. Integration tests that exercise real Click commands, unit tests for parsers and formatters, and why I test the output format, not just the logic.

Read more →
March 12, 2026

Modern Python Packaging: pyproject.toml and src Layout

A practical walkthrough of setting up a Python project with the src layout pattern, pyproject.toml (PEP 621), and setuptools. Why this structure prevents import confusion and makes your package installable from day one.

Read more →
March 5, 2026

What Makes a Good Domain Name for Developer Tools?

After reviewing dozens of domain names, patterns emerge. Short beats clever. TLD matters more than you think. And the best developer tool names are the ones you can say out loud in a standup without spelling them. Here's what I've learned.

Read more →