Posts by Tag

Azure

Refreshing DevOps Service Connections

4 minute read

A while back I put together an application provisioning process using PowerShell and Azure Pipelines to automate delivering Azure application environments in...

Publishing Secrets to Key Vault

6 minute read

Most applications make use of configuration to allow an application or script to be used in different ways. A common scenario is when an application has a de...

Sharing Bicep Templates

8 minute read

This is the third in a short series of posts focused on Azure Bicep. In the first, we introduced Bicep by highlighting some of its benefits as well as how to...

Testing Azure Resource Templates

5 minute read

In the previous post we introduced Bicep, its benefits and how to deploy a template to Azure (specifically a resource group). In this post, we’re going to bu...

Introduction to Azure Bicep

6 minute read

Over the past couple of years, I’ve been primarily developing and deploying applications to Azure. Typically these deployments comprise 2 broad aspects:

Sharing Azure Pipelines Templates

6 minute read

I have been developing build and release pipelines since Team Foundation Server 2015 to deploy ASP.NET and BizTalk Server applications. Over the past couple ...

Back to Top ↑

Azure Function

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Azure Function Polling Resiliency

1 minute read

Polling is a common integration pattern for extracting data from one system to integrate it into another. Azure Functions makes implementing the scheduling i...

Restore Isolated Durable Function Tuple Support

2 minute read

With the release of Azure Functions on .NET 8 and feature parity of the in-process to the isolated model, I’ve started to migrate existing in-process functio...

Documenting Nullables in Azure Function OpenAPI

2 minute read

This post is about an issue a colleague and I encountered recently whilst developing a series of layered APIs. The issue was that nullable properties weren’t...

Back to Top ↑

Azure Pipelines

Publishing Secrets to Key Vault

6 minute read

Most applications make use of configuration to allow an application or script to be used in different ways. A common scenario is when an application has a de...

Sharing Azure Pipelines Templates

6 minute read

I have been developing build and release pipelines since Team Foundation Server 2015 to deploy ASP.NET and BizTalk Server applications. Over the past couple ...

Back to Top ↑

DevOps

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Publishing Secrets to Key Vault

6 minute read

Most applications make use of configuration to allow an application or script to be used in different ways. A common scenario is when an application has a de...

Sharing Azure Pipelines Templates

6 minute read

I have been developing build and release pipelines since Team Foundation Server 2015 to deploy ASP.NET and BizTalk Server applications. Over the past couple ...

Back to Top ↑

Bicep

Sharing Bicep Templates

8 minute read

This is the third in a short series of posts focused on Azure Bicep. In the first, we introduced Bicep by highlighting some of its benefits as well as how to...

Testing Azure Resource Templates

5 minute read

In the previous post we introduced Bicep, its benefits and how to deploy a template to Azure (specifically a resource group). In this post, we’re going to bu...

Introduction to Azure Bicep

6 minute read

Over the past couple of years, I’ve been primarily developing and deploying applications to Azure. Typically these deployments comprise 2 broad aspects:

Back to Top ↑

DotNet

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

BizTalk

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

ARM

Sharing Bicep Templates

8 minute read

This is the third in a short series of posts focused on Azure Bicep. In the first, we introduced Bicep by highlighting some of its benefits as well as how to...

Testing Azure Resource Templates

5 minute read

In the previous post we introduced Bicep, its benefits and how to deploy a template to Azure (specifically a resource group). In this post, we’re going to bu...

Introduction to Azure Bicep

6 minute read

Over the past couple of years, I’ve been primarily developing and deploying applications to Azure. Typically these deployments comprise 2 broad aspects:

Back to Top ↑

.NET

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

Docker

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Build Multi-Platform Docker Images

4 minute read

Over the last couple of years I’ve been using Docker more for running my home-lab to learn about containerisation by both deploying community images as well ...

Back to Top ↑

Durable Function

Restore Isolated Durable Function Tuple Support

2 minute read

With the release of Azure Functions on .NET 8 and feature parity of the in-process to the isolated model, I’ve started to migrate existing in-process functio...

Back to Top ↑

OpenAPI

Documenting Nullables in Azure Function OpenAPI

2 minute read

This post is about an issue a colleague and I encountered recently whilst developing a series of layered APIs. The issue was that nullable properties weren’t...

Adding OpenAPI Service References

3 minute read

As an integration developer, one of the most common requirements I deal with is consuming APIs to integrate with different systems. There is still a wide var...

Back to Top ↑

DotNet Core

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

Error Handling

Azure Function Polling Resiliency

1 minute read

Polling is a common integration pattern for extracting data from one system to integrate it into another. Azure Functions makes implementing the scheduling i...

Back to Top ↑

Logging

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Back to Top ↑

ILogger

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Back to Top ↑

Durable Functions

Back to Top ↑

Pipeline Template

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

APIM

Back to Top ↑

API Management

Back to Top ↑

Docker Buildx

Build Multi-Platform Docker Images

4 minute read

Over the last couple of years I’ve been using Docker more for running my home-lab to learn about containerisation by both deploying community images as well ...

Back to Top ↑

GitHub Actions

Build Multi-Platform Docker Images

4 minute read

Over the last couple of years I’ve been using Docker more for running my home-lab to learn about containerisation by both deploying community images as well ...

Back to Top ↑

AutoMapper

Back to Top ↑

Multi-Part Map

Back to Top ↑

Integration

Back to Top ↑

Home Lab

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Back to Top ↑

VPN

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Back to Top ↑

OpenVPN

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Back to Top ↑

Wireguard

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Back to Top ↑

Tailscale

Securing your home lab using VPN and Tailscale

5 minute read

Over the last several years my home lab has grown from a single Raspberry Pi 4 to several in a Docker Swarm cluster. As the number of apps being hosted on th...

Back to Top ↑

Azure Repos

Sharing Azure Pipelines Templates

6 minute read

I have been developing build and release pipelines since Team Foundation Server 2015 to deploy ASP.NET and BizTalk Server applications. Over the past couple ...

Back to Top ↑

ARM-TTK

Testing Azure Resource Templates

5 minute read

In the previous post we introduced Bicep, its benefits and how to deploy a template to Azure (specifically a resource group). In this post, we’re going to bu...

Back to Top ↑

Testing

Testing Azure Resource Templates

5 minute read

In the previous post we introduced Bicep, its benefits and how to deploy a template to Azure (specifically a resource group). In this post, we’re going to bu...

Back to Top ↑

Bicep Modules

Sharing Bicep Templates

8 minute read

This is the third in a short series of posts focused on Azure Bicep. In the first, we introduced Bicep by highlighting some of its benefits as well as how to...

Back to Top ↑

Markdown

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Mermaid

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Mermaid JS

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

GitHub Pages

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Minimal Mistakes

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Theme

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Skin

Mermaid JS Support for Minimal Mistakes

2 minute read

In the last 6 months I’ve started to use Mermaid JS to draft integration designs as well as document implemented integration applications. There is a lot of ...

Back to Top ↑

Swagger

Documenting Nullables in Azure Function OpenAPI

2 minute read

This post is about an issue a colleague and I encountered recently whilst developing a series of layered APIs. The issue was that nullable properties weren’t...

Back to Top ↑

Azure Devops

Refreshing DevOps Service Connections

4 minute read

A while back I put together an application provisioning process using PowerShell and Azure Pipelines to automate delivering Azure application environments in...

Back to Top ↑

PowerShell

Refreshing DevOps Service Connections

4 minute read

A while back I put together an application provisioning process using PowerShell and Azure Pipelines to automate delivering Azure application environments in...

Back to Top ↑

WCF

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

.NET Core

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

CoreWCF

Recreating WCF Service in DotNet Core from WSDL

4 minute read

When Microsoft started porting .NET Framework to .NET Core (now simply .NET), some features were to remain on .NET Framework. One such feature was the server...

Back to Top ↑

Tuple

Restore Isolated Durable Function Tuple Support

2 minute read

With the release of Azure Functions on .NET 8 and feature parity of the in-process to the isolated model, I’ve started to migrate existing in-process functio...

Back to Top ↑

DotNet Isolated

Restore Isolated Durable Function Tuple Support

2 minute read

With the release of Azure Functions on .NET 8 and feature parity of the in-process to the isolated model, I’ve started to migrate existing in-process functio...

Back to Top ↑

Resiliency

Azure Function Polling Resiliency

1 minute read

Polling is a common integration pattern for extracting data from one system to integrate it into another. Azure Functions makes implementing the scheduling i...

Back to Top ↑

Retries

Azure Function Polling Resiliency

1 minute read

Polling is a common integration pattern for extracting data from one system to integrate it into another. Azure Functions makes implementing the scheduling i...

Back to Top ↑

HttpClient

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Back to Top ↑

DelegatingHandler

Customising HttpClient Logging

6 minute read

In Integration development, having sufficient logs is key to being able to debug issues. .NET has the well-established ILogger pattern which is available by ...

Back to Top ↑

Isolated Durable Functions

Back to Top ↑

Exception Handling

Back to Top ↑

Azure DevOps

Back to Top ↑

Azure SQL

Back to Top ↑

Microsoft-Hosted Agents

Back to Top ↑

App Service

Back to Top ↑

External App Service

Back to Top ↑

Private Endpoint

Back to Top ↑

Private DNS

Back to Top ↑

Design Patterns

Back to Top ↑

Factory Pattern

Back to Top ↑

Dependency Injection

Back to Top ↑

Azure Functions Isolated

Configuring Isolated Azure Function Logging

4 minute read

Logging is a crucial aspect of any application for understanding and debugging the behaviour of an app in different circumstances as well as analysing how us...

Back to Top ↑

Azure Pipeline

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

Pipeline

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

GitLeaks

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

Automation

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

CICD

Automating Scanning For Secrets

6 minute read

Source control is the foundation of software development for many reasons including tracking changes, collaboration, and backup/recovery. One of the most pop...

Back to Top ↑

BizTalk Server

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

Business Rules Engine

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

BRE

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

Microsoft Rules Engine

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

JSON Rules Engine

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

Rules Engine

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

Rule Engine

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑

Rules

Replacing BizTalk Business Rules Engine

8 minute read

Having developed on BizTalk Server for many years, I’ve used the Business Rules Engine (BRE) in numerous solutions via both orchestration shapes and the BREP...

Back to Top ↑