C# 15 Union Types in a Real Domain Model: Dispensed, Rejected or Referred

C# 15 union types applied to a prescribing model: a dispensing outcome that is exactly one of three cases, handlers the compiler keeps exhaustive, and fifteen experiments on what unions compile to, how they behave when empty, what they cost, how they serialise, and how they work with .NET 10 and C# 14 code.

Read more →

Azure Container Apps or AKS for a Regulated Workload: Who Patches What

For a regulated workload the container platform decision is mostly about who patches what and who can prove it. A ledger of thirteen operational duties across Container Apps, AKS Automatic and AKS Standard, the same security baseline written twice in Terraform with tests, and a decision rule short enough to argue with.

Read more →

One Contract, Two Clouds: A Network Baseline on AWS and Azure with Terraform

Do not write one Terraform module that hides the cloud. Share the contract instead: the same inputs, outputs, naming and contract tests over an AWS implementation and an Azure implementation, tested on Terraform and OpenTofu with mocked providers, with the cost of the switch-module design measured.

Read more →

Testing Infrastructure Code: terraform test, Mock Providers and a Policy Gate in CI

A Terraform module for a clinical-document bucket tested three ways in CI with no cloud account: fourteen unit tests on a mocked provider that pass on Terraform 1.16 and OpenTofu 1.12, ten deliberate defects that the tests must catch, and a policy gate over the JSON plan.

Read more →