Ken Muse
Creating a Zip Package in .NET
The process of compiling a .NET project and creating a ZIP file for deployment is often more complicated than it needs to be. Most CI/CD systems use a series of commands and external dependencies to build and package the project. This post shows how to use built-in functionality to simplify the process to a single call to dotnet publish.

Read this article

The Magic of Scaling and Auto-Scaling
Scaling systems is a process that is often counter-intuitive. It’s not just about adding more resources. It’s about understanding the bottlenecks and how to overcome them. After years spent troubleshooting highly scaled systems, I’ve learned a few things that can make the journey easier.

Read this article

Automating Azure OIDC Application Federation
Ever needed to automate creating an Azure Entra ID (Azure Active Directory) application and federating it with GitHub? With just a little PowerShell, you can!

Read this article

Understanding OIDC and Identity Federation
With the rise of OIDC, we no longer need to rely on secret keys or passwords to connect two services together. Instead, we can configure a trust relationship between the services and use that to securely request tokens for accessing resources. Adopting this approach can simplify things, but it can be scary for security teams and developers; they want to understand what makes this process work. In this post, walk through what’s happening under the covers.

Read this article

Understanding the SLA of ARC
I’ve seen lots of teams trying to increase the availability of GitHub runners for their organization by implementing GitHub Actions Runner Controller (ARC). In some cases, they hope to try to exceed GitHub’s 99.9% SLA. Unfortunately, the math works against them. In this post, I’ll explain why.

Read this article