Skip to content
What is the total cost of ownership (TCO) and why is it important?

What is the total cost of ownership (TCO) and why is it important?

Barry Smart

Understanding the total cost of ownership is key to making informed decisions about technology investments.
Continuous Integration with GitHub Actions

Continuous Integration with GitHub Actions

Liam Mooney

This post gives an overview of Continuous Integrations and shows how you can implement it with GitHub Actions, with an accompanying example Python project
Publishing Scripts to the PowerShell Gallery

Publishing Scripts to the PowerShell Gallery

James Dawson

Explore how to share a function from a PowerShell module as a standalone script, without maintaining two code versions.
Bye bye Azure Functions, Hello Azure Container Apps: Migrating from Azure Functions to ASP.NET Core

Bye bye Azure Functions, Hello Azure Container Apps: Migrating from Azure Functions to ASP.NET Core

Jonathan George

The second in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Insight Discovery (part 3) – Defining Actionable Insights

Insight Discovery (part 3) – Defining Actionable Insights

James Broome

Discover a unique, action-oriented approach to data projects for maximum impact. Learn how to synergize with platforms like Azure Synapse for fast delivery.
How to enable data teams with the design assets required for impactful data storytelling in Power BI

How to enable data teams with the design assets required for impactful data storytelling in Power BI

Paul Waller

In this post we will talk through how to expand on a data team's creative skillset, without access to specialist photo editing software such as Photoshop or Illustrator.
5 tips to pass the PL-300 exam: Microsoft Power BI Data Analyst

5 tips to pass the PL-300 exam: Microsoft Power BI Data Analyst

Elisenda Gascon

I recently passed the PL-300 - Power BI Data Analyst exam. Here are some tips to prepare for it that I found useful!
Insight Discovery (part 2) – successful data projects start by forgetting about the data

Insight Discovery (part 2) – successful data projects start by forgetting about the data

James Broome

Many data projects fail to deliver the impact they should for a simple reason – they focus on the data. This series of posts explains a different way of thinking that will set up your data & analytics projects for success. Using an iterative, action-oriented, insight discovery process, it demonstrates tools and techniques that will help you to identify, define and prioritize requirements in your own projects so that they deliver maximum value. It also explores the synergy with modern cloud analytics platforms like Azure Synapse, explaining how the process and the architecture actively support each other for fast, impactful delivery.
A simple toolkit for IT budgeting and planning

A simple toolkit for IT budgeting and planning

Barry Smart

We describe how to create a high level view of your digital assets, where everything is measured equally and actionable insights can be generated that allow you to optimise your budget and build a roadmap focused on business value.
Performance Optimisation Tools for Power BI

Performance Optimisation Tools for Power BI

Jessica Hill

Optimise Power BI report performance with analyzer tools. Discover essential techniques for efficient report development in this blog post.
C# Lambda Discards

C# Lambda Discards

Ian Griffiths

C# has gradually been adding support for discards. This article explores how this evolution has led to some surprises.
Insight Discovery (part 1) – why do data projects often fail?

Insight Discovery (part 1) – why do data projects often fail?

James Broome

Discover a unique, action-oriented approach to data projects for maximum impact. Learn how to synergize with platforms like Azure Synapse for fast delivery.
Bye bye Azure Functions, Hello Azure Container Apps: Introduction

Bye bye Azure Functions, Hello Azure Container Apps: Introduction

Jonathan George

The first in a series of posts talking about how and why we migrated an application from Azure Functions to Azure Container Apps
Automating Excel in the Cloud with Office Scripts and Power Automate

Automating Excel in the Cloud with Office Scripts and Power Automate

Liam Mooney

Automate Excel tasks with Office Scripts & Power Automate. Get an overview and explore a practical example in this post.
Service Lifetimes in ASP.NET Core

Service Lifetimes in ASP.NET Core

Elisenda Gascon

Explore Microsoft Dependency Injection container's 3 lifetimes: transient, singleton, scoped. Learn their behaviors & importance in app dependencies.
Using Azure CLI Authentication within Local Containers

Using Azure CLI Authentication within Local Containers

James Dawson

Fix broken dev loop with containerized apps on Azure CLI for Windows. Learn a workaround to avoid using outdated Azure CLI versions.
How to apply behaviour driven development to data and analytics projects

How to apply behaviour driven development to data and analytics projects

Barry Smart

In this blog we demonstrate how the Gherkin specification can be adapted to enable BDD to be applied to data engineering use cases.
Sharing access to synchronized Shared Metadata Model objects in Azure Synapse Analytics

Sharing access to synchronized Shared Metadata Model objects in Azure Synapse Analytics

Ed Freeman

Learn how to grant non-admin users access to Spark synchronized objects with SQL Serverless in Synapse Analytics using the Shared Metadata Model.
Adventures in Dapr: Episode 3 - Azure Storage Queues

Adventures in Dapr: Episode 3 - Azure Storage Queues

James Dawson

If you're interested in the Distributed Application Runtime (Dapr) and how it can simplify migrating existing workloads to use cloud platform services, then this series might be for you. In this post, we continue modifying the excellent Dapr Traffic Control sample application by swapping the MQTT-based messaging with Azure Storage Queues. We will also look at how you can use the Dapr programming model as an alternative to cloud-provider SDKs.
What is the Shared Metadata Model in Azure Synapse Analytics, and why should I use it?

What is the Shared Metadata Model in Azure Synapse Analytics, and why should I use it?

Ed Freeman

Explore Azure Synapse's 'Shared Metadata Model' feature. Learn how it syncs Spark tables with SQL Serverless, its benefits, and tradeoffs.
Context Transition in DAX

Context Transition in DAX

Jessica Hill

This blog post explores how the CALCULATE function in DAX performs context transition.
Understanding the Stack and Heap in C#

Understanding the Stack and Heap in C#

Liam Mooney

The stack and heap are central components of memory management in C# programs. This post aims to introduce the topic, with a number of worked examples.
Excel, data loss, IEEE754, and precision

Excel, data loss, IEEE754, and precision

Ian Griffiths

Explore the impact of Excel's numeric precision rules on identifiers and learn about infamous data loss incidents caused by misuse in this post.
CALCULATE in DAX

CALCULATE in DAX

Jessica Hill

This blog post explores one of the most powerful functions in DAX - CALCULATE.
RELATED and RELATEDTABLE in DAX

RELATED and RELATEDTABLE in DAX

Jessica Hill

This blog post explores two common functions in DAX - RELATED and RELATEDTABLE.