25 July 2026 · 1500 words · 8 mins
Martial arts makes experts redo the basics on a schedule. Software has no such mechanism, so beginner's mind stops being a virtue and becomes a budget you spend on purpose.
16 July 2026 · 804 words · 4 mins
Two maintained ways to run AI coding assistance on a local model with Ollama, so your code never leaves your machine: Cline inside VS Code, and Zed.
12 July 2026 · 1174 words · 6 mins
Add RetroPie to your Raspberry Pi HTPieC and serve classic games to phones, laptops, and other Pis over the home network.
11 July 2026 · 1145 words · 6 mins
Flat-rate AI taught us to burn tokens like they were free. Metered billing puts a price back on the sloppy prompt, and that visibility is a feature.
9 July 2026 · 1064 words · 5 mins
Autonomous agent loops don't remove you from the work, they relocate you — onto the spec you write up front and the big diff you review but never watched grow.
5 July 2026 · 1063 words · 5 mins
The slop flooding Steam isn't a tool problem, it's a taste problem. AI didn't lower the floor for making games — it removed the excuse for a bad one.
2 July 2026 · 1122 words · 6 mins
Privacy was never the only reason to run a model locally — resilience is. A fourth case for local AI, made concrete by 18 days of a frontier model going dark.
27 June 2026 · 1121 words · 6 mins
AI collapsed the cost of writing code and changed nothing about the cost of owning it. Velocity is a development-time number. The bill is a lifetime one.
8 June 2026 · 924 words · 5 mins
AI gave me the throughput to cover a role I don't normally hold — but not the judgment that role is made of. A release, an incident, and a skill I'd outsourced.
31 May 2026 · 966 words · 5 mins
Build a Raspberry Pi 5 media and ebook server: Pi OS setup, Plex, Calibre, external storage mounts, and automated rsync backups.
22 April 2026 · 841 words · 4 mins
Two rules every runner learns — nothing new on race day, dress for warmer than it is — and what they taught me about shipping on deploy day.
7 April 2026 · 628 words · 3 mins
VSCodium, Void, Zed, Windsurf — and back to VS Code. After years of switching editors, the things that stuck weren't the editors.
27 March 2026 · 934 words · 5 mins
Three cases where running a model on your own machine wins, and the longer list where it loses.
28 February 2026 · 763 words · 4 mins
Juniors think admitting uncertainty ends a career. Seniors know it extends one. The script for saying it well.
13 January 2026 · 830 words · 4 mins
Time in the game-master's chair turned out to be management practice in disguise: session zero, the spotlight problem, and the players who hijack the plot.
12 December 2025 · 775 words · 4 mins
You run 1:1s for your reports and hold space for clients. The higher you go, the less anyone does it for you — so run the meeting for yourself.
12 November 2025 · 821 words · 4 mins
When to push back on a PR, when to merge with a question, and when to actually block. A field guide to the comment box.
16 October 2025 · 938 words · 5 mins
Most of what a leader needs to happen can't be ordered into existence. Five coaching moves that turn influence into leverage.
4 September 2025 · 348 words · 2 mins
A Hugo archetype plus a small Bash script for creating new TIL posts from anywhere on the command line.
16 August 2025 · 1162 words · 6 mins
What Dataview does, the four plugins it pairs with, and the Person/Meeting/daily-note templates I use to make it sing.
8 July 2025 · 944 words · 5 mins
Why I use Calibre as the source of truth for my ebook library: metadata, format conversion, custom columns, plugins, and running it as a content server.
19 May 2025 · 601 words · 3 mins
Generate memes from the command line with ImageMagick 7: setup, the classic meme command, and variations worth knowing.
6 May 2025 · 704 words · 4 mins
Why scraping didn't die when LLMs arrived, and how I decide between Beautiful Soup and Scrapy for a given job.
22 April 2025 · 633 words · 3 mins
A quick-start guide to installing LM Studio, connecting local models via Ollama, and LM Studio basics.
8 April 2025 · 732 words · 4 mins
Why I keep Zed open next to VS Code, the four settings that made the switch stick, and an honest take on its AI panel.
24 March 2025 · 1263 words · 6 mins
What dotfiles are, why they pay off, and how I manage mine with GNU Stow, Homebrew, and an install script you can clone and run in one command.
13 March 2025 · 681 words · 4 mins
Install VSCodium with Homebrew, set up themes and plugins, and wire in GitHub Copilot via the .vsix workaround.
26 February 2025 · 863 words · 5 mins
Void editor plus a local AI model is a private dev pair that keeps your code off vendor servers. Install, settings, integration.
17 February 2025 · 670 words · 4 mins
Set up Jupyter Notebook inside a Python virtual environment, then put it to work with a small RPG-inspired demo.
9 February 2025 · 717 words · 4 mins
Set up Python on macOS with pyenv and pyenv-virtualenv, with the why behind each step and the version-conflict pitfalls to avoid.
20 January 2025 · 368 words · 2 mins
Notes from my first half marathon (2025 Austin International Half): the cold, the gear, the game-time decisions, and what almost went wrong.
10 January 2025 · 926 words · 5 mins
A step-by-step guide to setting up Ruby, Bundler, and Jekyll on macOS using Homebrew and chruby for your static site needs.
27 December 2024 · 761 words · 4 mins
Why Adler's 'trust movement' beats outcome-shaped goals, and how it reshapes the yearly note I write in Obsidian.
19 December 2024 · 742 words · 4 mins
Why Homebrew earns the install on a new Mac, how to set it up, and the brews worth knowing once it's there.
10 December 2024 · 1320 words · 7 mins
The daily-notes practice that survived a decade, the Obsidian template I use, and why most note-taking habits die in month two.