Journal
Posts and long-form series on AI, startups, venture capital, and more.
All Posts
Spring Reading List 2026
Spring reading spanning banana empires, systems thinking, quiet farm life, and the continued misadventures of Arthur Dent.
The Full McGinnis Stack: An Opinionated Python Developer Setup
How to wire together ContextSwitch, python-skills, makefile-mcp, mutmut-mcp, Rampart, and the rest into a complete AI-powered Python development workflow.
Using Claude Code Hooks to Force uv
A simple pre-tool-use hook that intercepts bare pip and python commands in Claude Code and redirects them to use uv instead.
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.
Hiring Data Scientists: What Actually Matters in 2026
The data science hiring landscape has changed dramatically. Here's what I actually look for now vs. what I used to look for, and why.
A Full SDLC with MCP Servers
How I use a collection of MCP servers to cover the full software development lifecycle, from task management to testing to deployment.