Archive
Complete list of all blog posts.
-
Leaving the hyperscalers: what a .NET SaaS really saves moving from AWS/Azure to Hetzner
-
AI coding guardrails for regulated industries: what we ship for fintech, govtech and assurance clients
-
AUTO-TABLE inventories: a structured codebase index Claude Code can actually trust
-
Bayesian build-outcome confidence: telling Claude when its plan is likely to fail before it costs you a build
-
How we run Claude Code on a 5-developer .NET team — with our actual CLAUDE.md, hooks, and skills
-
What a .NET SaaS actually costs to build in 2026 (with the line items)
-
GitHub Copilot modernize-dotnet vs. Claude Code on a real .NET 8 → 10 migration
-
The oscillation detector hook: stopping Claude Code from edit-thrashing your .NET solution
-
A Roslyn MCP server is the cheat code for AI on .NET — here's what to put in one
-
A spec-driven CLAUDE.md template for .NET solutions (and what each section actually does)
-
Why we charge $4,800 per sprint and what that buys you
-
Twelve layers between Claude and your production .NET code
-
Why we still bet on .NET monoliths in the agent era — and out-ship the 30-person microservices team
-
The N+1 Query Problem in EF Core: Benchmarking Every Fix on PostgreSQL
-
FastEndpoints vs Minimal API vs Controllers: .NET 10 Performance Benchmarks
-
Swagger Dark Theme
-
Duende IdentityServer: OpenID Connect and OAuth 2.0 for .NET
-
OpenID Connect (OIDC) in .NET Core
-
The Future of .NET Development: Framework Trends and Predictions for 2024
-
Azure DevOps Deployment Best Practices for .NET and .NET Core Applications
-
What is .NET Aspire?
-
Mastering JWT in .NET Core: Encoding and Decoding
-
Why You Need to Migrate from .NET to .NET Core for Software Development