Posts

Showing posts from 2026

A Secure Blazor Server Azure Deployment Pipeline

Image
I wanted to kick off the year with something practical, modern, and production-ready. This post is based on my own experience deploying my new website, dotnetconsult.tech , using GitHub Actions into Azure App Service . In this post, I’ll walk through how to set up a secure development and deployment flow using: Blazor Server GitHub Azure App Service GitHub Actions with OpenID Connect (OIDC) This approach avoids stored secrets entirely and reflects how I now set up every new .NET project  whether it’s for a client, a SaaS product, or an internal tool.

A Practical Stack for Semantic Analytics: Azure, C#, Redis, and PostgreSQL

Image
Happy New Year 🎉 Welcome to  2026 , and welcome to the first post of the new year. Part 1 Available Here Part 2 Available Here Part 3 Available Here Up to now, I’ve deliberately avoided talking about technology. Not because it doesn’t matter,  but because architecture should follow meaning , not the other way around. That said, once you commit to a semantic-first approach, certain technology choices start to make more sense than others. This post is about the stack I’ve been gravitating toward and why . Why “Boring” Technology Is Often the Right Choice Semantic analytics systems are already complex conceptually. Adding novelty at the infrastructure layer tends to: Increase cognitive load Reduce debuggability Make correctness harder to reason about For this kind of system, I’ve been prioritizing: Predictability Strong typing Explicit boundaries Operational clarity That naturally pushed me toward a stack built around Azure, C#, Redis, and Postg...