Development
46 posts
uv Changed How I Think About Python Projects
After years of pip, virtualenv, poetry, and conda, uv has quietly become the only Python packaging tool I recommend. Here's why.
Code Archaeology with AI
Using AI coding assistants to understand, document, and revive legacy codebases. What works, what doesn't, and where the hallucinations live.
Technical Debt Is a Leadership Problem
Most tech debt conversations happen between engineers. But the decisions that create and resolve it are fundamentally leadership decisions.
You Don't Need a Justfile
Justfiles, Pixi tasks, Taskfiles, and other modern Make replacements are solving a problem that was already solved in 1976.
Advanced Makefile Patterns for Python Projects
Beyond the basics: self-documenting targets, environment detection, conditional logic, and other Makefile patterns I use in real Python projects.
uvx --from: Run Any Python Tool Directly from GitHub
You can use uvx to run Python CLI tools straight from a GitHub repo with no install step. Here's how it works and why it's useful.
MCP Sampling and Elicitation: The Features That Make Servers Smart
A technical guide to MCP sampling and elicitation: two powerful features that let MCP servers talk back to the client's LLM and ask users for input.
Maintaining Open Source Libraries Nobody Uses
What it's actually like to maintain small open source projects that have a few hundred users instead of a few hundred thousand.
Claude Skills: Teaching Your AI Assistant Context-Aware Expertise
How Claude Skills let you embed reusable expertise into your projects, with a deep dive into building a de-slop skill for cleaning AI-generated code.
Building a Personal Prompt Library with MCP and Lexicon
How Lexicon turns your personal prompt templates into MCP prompts that automatically become slash commands in Claude Code