Hi, I'm Joel
I design systems, both technical and human.
Dad, CTO at Agility CMS, exploring software, third spaces, football 🏈, theatre, and modern life.

The Choice Before Us: Why Star Trek Still Matters
Star Trek: Starfleet Academy premieres today, and we're living in a new golden age of Trek. But beyond the entertainment, Gene Roddenberry's vision offers us something we desperately need right now: a roadmap for how technology can make us more human, not less.
Read more→
My iPad Is My Second Brain (Outside of Work)
How I use my M4 iPad Pro for everything from journaling to rehearsing scripts—and why it's become indispensable for my non-work life.
Read more→
A Day Exploring Oslo: Art, Architecture, and the Fjord
Before heading to Denmark for a conference, I scheduled a solo day in Oslo to acclimate to the time zone. What I discovered was a city where art and urban life are beautifully intermingled - sculptures on every corner, world-class architecture, and stunning fjord views.
Read more→
The Realness of Theatre
Theatre isn't content. It's people in a room doing something difficult together while other people watch. That's it. That's the whole thing.
Read more→
A Solo Week in Ontario's Autumn Trails Around Northumberland
Last fall I took a week off to explore some of Ontario's most beautiful trails—Northumberland Forest, Lakefield, Warsaw Caves, and more. Armed with my Sony a6700 and a Peak Design camera clip, I captured the season at its peak.
Read more→
Back to the Stage - and It’s a New Stage
For the first time since 2019, I’m rehearsing a show as an actor. I’ve been cast as “Sam” in Mamma Mia with the Northumberland Players!
Read more→Using MCP to Bulk Upload Blog Posts: The Final Step
The final piece of the puzzle: using Claude Code and the Agility CMS MCP server to bulk upload 18 blog posts documenting this entire journey. What took minutes would have taken hours manually - and it demonstrates the power of AI-assisted content management.
Read more→Switching from Cursor to Claude Code: A New Development Partner
I started building this personal website using Cursor as my primary AI coding assistant. But here's the thing about AI development tools - they're evolving rapidly, and it's worth experimenting. Today I switched to Claude Code to see how it handles project handoff and continuation.
Read more→Series Feature Implementation
The Series feature allows grouping blog posts into series with dedicated landing pages. Each series has a title and slug, a markdown summary that displays at the top of the landing page, and a filtered list of blog posts that belong to the series.
Read more→Refactoring Markdown Gallery Processing: A Deep Dive
The blog system supports seven different gallery types that can be embedded in markdown. We refactored the gallery processing into a proper Remark plugin that follows the unified/remark ecosystem patterns.
Read more→