Browse our archives by topic…
Blog

Do robots dream of counting sheep?
Some of my thoughts inspired whilst helping out on the farm over the weekend. What is the future of work given the increasing presence of machines in our day to day lives? In which situations can AI deliver greatest value? How can we ease the stress of digital transformation on people who are impacted by it?

Configuration in Azure Functions - What's in the box?
The first in a series of posts talking about how to best work with configuration in Azure Functions

How to safely reference a nullable activity output in Azure Synapse Pipelines and Azure Data Factory
Did you know that there's a null-safe operator in Azure Data Factory's expression syntax? No? Well, now you do. Here's how you can safely reference an activity output that might not always exist.

How to trigger an Azure Synapse pipeline run from C#
A rundown of how to trigger an Azure Synapse pipeline run from C# code.

Learning from Covid-19
Summary of key themes from the Doing Data Together conference hosted virtually by The Scotsman newspaper and Edinburgh University in November 2020. The conference agenda was pivoted to focus on the use of data to help tackle the Covid-19 pandemic. It provided a fascinating insight into the lessons learned.

Installing Mattermost using the Azure CNAB Quickstart Library
Get started with Mattermost on Azure using the Mattermost on AKS quickstart from the Azure CNAB Quickstart Library.

How Azure Synapse unifies your development experience
Modern analytics requires a multi-faceted approach, which can cause integration headaches. Azure Synapse's Swiss army knife approach can remove a lot of friction.

Design patterns in C# - The Proxy Pattern
This blog is part of a series around design patterns. This post focuses on the proxy pattern. The proxy pattern is used to restrict and control access to underlying objects. It is useful in communicating with remote servers, or in adding extra functionality on object access.

How to consume a NuGet package in PowerShell
Sometimes the logic for the bit of work you're doing in PowerShell won't be packaged into a handy PowerShell module with cmdlets to perform the operations you need to perform. But what if there is a .NET package listed on NuGet that does contain the assemblies you need for your work? How can we import that into PowerShell and make use of its classes and methods? This blog explains how to do just that, avoiding current pitfalls in PowerShell's implementation of the NuGet package provider.

How to update credentials for an on-prem Power BI data source using PowerShell
Automating the updating of Power BI data source credentials is a common requirement in the application lifecycle management of a Power BI solution. However, on-premises data sources throw an extra spanner in the works: you must encrypt your credentials using the RSA-OAEP encryption algorithm before sending off the request to update the data source. There is currently no PowerShell module that encapsulates this logic into a set of handy cmdlets, so you must either implement the algorithm's logic yourself, or you can use the helper classes in the existing .NET SDK to do all the heavy lifting for you. This blog shows how to do the latter.

When C# 9.0 patterns go wrong: mechanism over intent
C# 9 makes welcome additions to the language's increasingly powerful pattern matching capabilities. However, with great power comes a temptation to make a great big mess. In this post, Ian Griffiths urges us not to get carried away.

Does your GitHub Repo need 'Code Operations'?
CodeOps enables you to layer standards, automation, and governance to your source control repositories, decreasing manual effort and increasing productivity.

Design patterns in C# - The Facade Pattern
This blog is part of a series around design patterns. This post focuses on the facade pattern. The facade pattern provides an interface into a complex system, in order to simplify access to the functionality.