Writing
Blog
Thoughts on software architecture, AI, algorithmic trading, investing, and building for the long term.
Sparkle-Style Auto-Updates for PyQt6 Desktop Apps
I built a cross-platform auto-update system for PyQt6 that mirrors Sparkle's appcast pattern. Ed25519-signed XML feeds, QThread-based background checks, and the same installer plumbing on Windows, macOS, and Linux.
Building a Weekly Meal Pipeline
How I built an automated pipeline that scrapes 3 grocery circulars, analyzes 44 images with Gemini, generates weekly menus, and pushes to a web dashboard.
OCR Extraction Benchmark
I built a benchmark to compare three approaches for structured data extraction from Quebec receipts.
Building Sovereign AI Infrastructure: Why I Moved Everything Off the Cloud
After years of relying on cloud APIs, I built a fully self-hosted AI stack. Here's what I learned, what I use, and why sovereignty matters more than convenience.