Software Engineer · Self-Hosting Advocate · Music Obsessive
Building purposeful software — clean architectures, developer tooling, and the occasional vanity project.
I'm a software engineer with a fondness for clean architecture, strong opinions about tooling, and an embarrassingly deep interest in music.
By day I design and build .NET systems with a focus on clean architecture, proper testing, and CI/CD that actually works. By night I run self-hosted infrastructure, build Obsidian plugins, and over-engineer my music library. When I'm away from the keyboard you'll find me training for a triathlon or hunting down a record.
An eclectic radio station built on Hugo with a bespoke .NET 10 content operations pipeline. The pipeline handles album intake, Spotify and Lidarr integration, and automated publishing — all packaged as a self-contained binary with a GHCR-published Docker image.
Tech: .NET 10 · Clean Architecture · Mediator · ErrorOr · Docker · GitHub Actions · Hugo
A TypeScript plugin for Obsidian that brings CookLang recipe management into your knowledge base. Render, browse, and manage structured recipes alongside your notes.
Tech: TypeScript · Obsidian API
Sample project demonstrating fitness data integration with the Strava API via Strava.NET — a useful reference for anyone building health and activity tracking applications.
Tech: C# · .NET · Strava API
A structured, opinionated productivity system: reusable Todoist templates, weekly review workflows, and automation patterns for power users who want repeatability without the overhead.
- 🔨 Pushed to
colin-gourlay/sundown-sessions24 Oct 2026 - 🐛 Opened issue in
colin-gourlay/sundown-sessions— _Fix The Filthy Tongues Artist-page Explore Further and three-show track _24 Oct 2026 - 🐛 Opened issue in
colin-gourlay/sundown-sessions— Artist page review — Show #1: Featuring The Big Now27 Sep 2026 - 🔨 Pushed to
colin-gourlay/sundown-sessions27 Sep 2026 - 🐛 Closed issue in
colin-gourlay/sundown-sessions— Complete Nick Cave & The Bad Seeds Artist-page track history and discove27 Sep 2026 - 🔀 Opened PR in
colin-gourlay/sundown-sessions— __27 Sep 2026 - 🌿 Created branch
fix/src/nick-cave-archive-discoveryincolin-gourlay/sundown-sessions27 Sep 2026 - 🐛 Opened issue in
colin-gourlay/sundown-sessions— Complete Nick Cave & The Bad Seeds Artist-page track history and discove27 Sep 2026 - 🐛 Closed issue in
colin-gourlay/sundown-sessions— Complete The Vermin Poets Artist-page track relationship and discovery27 Sep 2026 - 🌿 Created branch
fix/src/vermin-poets-track-discoveryincolin-gourlay/sundown-sessions27 Sep 2026
Last updated: 26 October 2026 at 05:13 UTC
- sundown-sessions — Automated radio show platform combining a Hugo site with a custom .NET pipeline for music ingestion, metadata enrichment, and continuous publishing.
C#⭐ 1 - todoist-playbook — A Todoist productivity playbook with reusable templates, weekly review systems, and automation-ready workflows for power users.
Python⭐ 4 - qwerty
TypeScript - art-school-dance
HTML⭐ 1 - github-copilot
- listenarr
- github-actions
- foam2
SCSS
Last updated: 26 October 2026 at 05:13 UTC
- gastownhall/beads — Beads - A memory upgrade for your coding agent
Go⭐ 28,210 - cncf/velocity — 🚅Track development velocity
Shell⭐ 226 - obsidianmd/obsidian-help — Help documentation for Obsidian.
JavaScript⭐ 1,947 - avantadore/PolymorphRestApi — Demonstrating how to build an Api with Polymorph classes
C#⭐ 1 - metabrainz/musicbrainz-server — Server for the MusicBrainz project (website, API, database tools)
Perl⭐ 1,107 - avatar29A/MusicBrainz — Implementation MusicBrainz API 2.0 (C#)
C#⭐ 71
C# ×9 · Python ×5 · TypeScript ×4 · Go ×3 · Shell ×2 · JavaScript ×2 · Perl ×1 · Dockerfile ×1
Last updated: 26 October 2026 at 05:13 UTC





