Keycloak Tutorial for .NET Developers
Read time: 15 minutes In one of my recent newsletters, I claimed OpenID Connect (OIDC) is the right way to configure authentication and authorization for your ASP.NET Core apps. No need to reinvent...
View ArticleDeploy Smarter, Not Harder with Containers
Read time: 7 minutes A few days ago I was chatting with a good friend about the project he’s working on at Microsoft, which turns out to be all about the backend side of a popular product used by...
View ArticleShrink Your .NET Containers, Boost Your Deployments
Read time: 5 minutes One of the reasons why containers are so popular for deploying any kind of backend application is the ability to go from zero to fully deployed in just a few seconds, as opposed...
View ArticleMulti-Provider Authentication in ASP.NET Core: Keycloak + Entra ID
Read time: 6 minutes Gone are the days when you created Web applications that only offered the option to register and log in with a user and password combination, backed by a local Users database....
View ArticleZero-Cost Resilience For .NET Apps In Azure
Read time: 7 minutes A few days ago, I was getting ready to test my latest ASP.NET Core app in the cloud when I remembered I still needed a good way to deal with unreliable Azure dependencies. My app...
View Article4 Ways To Get Free Azure Credits
Read time: 6 minutes A common question I get from devs who are getting started with Microsoft Azure is how to get free access to create and test Azure resources, especially for learning purposes....
View ArticleFrom 1.5s to 126ms: How Azure Front Door CDN Speeds Up Image Loading
Read time: 5 minutes Have you ever landed on a website filled with images and spent the last several seconds patiently waiting for those images to finish loading in your browser? This actually...
View ArticleZero-Code Full-Stack Development with AI, .NET and React
Read time: 8 minutes Vibe coding is an AI programming technique in which you describe a problem in natural language to an AI assistant (a large language model), and it builds the software for you....
View ArticleThe Easiest Way To Deploy Your ASP.NET Core App To Azure
Read time: 7 minutes A few months ago, I needed to deploy a small ASP.NET Core API to Azure—fast. But I quickly realized how confusing it can be, especially for newcomers. Azure offers a lot of...
View ArticleAzure Key Vault Tutorial For .NET Developers
Read time: 6 minutes Today I’ll show you how to properly secure and access your .NET application secrets via Azure Key Vault. You probably know you shouldn’t be storing API keys, connection strings,...
View ArticleYou Don’t Need MediatR
Read time: 6 minutes Jimmy Bogard, the creator of MediatR, recently announced that the library is going commercial. Instead of panicking, I think it’s the perfect time to ask yourself if you even...
View ArticleGo Passwordless with ASP.NET Core + Azure PostgreSQL
Read time: 7 minutes If you’re building secure, cloud-native ASP.NET Core applications, there’s a good chance your database connection string still includes a password. You may be storing it in Azure...
View ArticleDiagnosing JWT Failures in ASP.NET Core the Right Way
Read time: 5 minutes A few days ago, while recording my latest YouTube video, I kept hitting 403 errors when calling my .NET API from Postman—even though I was passing what looked like a valid access...
View ArticleBuilding My Own Payments API with .NET and Stripe
Read time: 5 minutes A few days ago, during a key 3-day enrollment window for the .NET Academy All-Access Pass, a number of customers encountered a critical error on the Thinkific checkout page:...
View ArticleHow to Seed Data with EF Core 9 and .NET Aspire
Read time: 5 minutes A few days ago, I was updating a .NET Aspire worker app that needed to seed some data on startup—just basic game genres like “Fighting” and “Roleplaying.” EF Core 9 now makes...
View ArticleHow to Migrate from Docker Compose to .NET Aspire
Read time: 7 minutes If you’ve ever set up containers for your .NET app with Docker Compose, you know the routine: Write some YAML, expose a few ports, map a volume, fiddle with environment...
View ArticleBuild a System, Not an App
Read time: 6 minutes You’re probably thinking about your app in terms of projects—your .NET API, your React or Angular frontend, maybe a worker or two. But let me challenge that mindset. You’re not...
View Article