Skip to content
The importance of specific & immutable dependency versions

The importance of specific & immutable dependency versions

Mike Evans-Larah

This post describes the reasons for choosing specific & immutable dependency versions in your software.
C# 8.0 nullable references: defeating the point with empty strings

C# 8.0 nullable references: defeating the point with empty strings

Ian Griffiths

Enabling C# 8's nullable references feature often produces a lot of warnings. Avoid the temptation to make some go away by initializing properties to empty strings.
How to fix the "You need permission to access workspace..." error in Azure Synapse Analytics

How to fix the "You need permission to access workspace..." error in Azure Synapse Analytics

Ed Freeman

Fix the "You need permission" error in Azure Synapse Analytics with this guide, addressing its causes and solutions for Data Engineers/Developers.
How to use the Azure CLI to manage access to Synapse Studio

How to use the Azure CLI to manage access to Synapse Studio

Ed Freeman

Assign roles in Synapse Studio for Azure Synapse Analytics devs using Azure CLI. Accessible by Owners/Contributors of the resource.
Design patterns in C# - The Decorator Pattern

Design patterns in C# - The Decorator Pattern

Carmel Eve

Investigate the decorator pattern in this blog post, a design pattern used to dynamically enhance object functionality.
GitOps: Not Just For Kubernetes!

GitOps: Not Just For Kubernetes!

James Dawson

Discover how GitOps, often used for Kubernetes management, can benefit a broader audience.
The Public Health England Test and Trace Excel error could have been prevented by this one simple step

The Public Health England Test and Trace Excel error could have been prevented by this one simple step

James Broome

Despite the subsequent media reporting, the loss of 16,000 Covid-19 test results at Public Health England wasn't caused by Excel. This post argues that a lack of an appropriate risk and mitigation analysis left the process exposed to human error, which ultimately led to the loss of data and inaccurate reporting. It describes a simple process that could have been applied to prevent the error, and how it will help if you're worried about ensuring quality or reducing risk in your own business, technology or data programmes.
How to update your Microsoft Authenticator App for a work/school account

How to update your Microsoft Authenticator App for a work/school account

Carmel Eve

This post quickly runs through the steps for setting up a new Microsoft Authenticator App for a work or school account.
C# 8.0 nullable references: prepare today by not misusing 'as'

C# 8.0 nullable references: prepare today by not misusing 'as'

Ian Griffiths

Prepare for using C# 8.0 nullable references by not misusing the 'as' operator.
Does Azure Synapse Link redefine the meaning of full stack serverless?

Does Azure Synapse Link redefine the meaning of full stack serverless?

James Broome

Explore Azure Synapse Link for Cosmos DB's impact on 'full stack serverless', No-ETL, and pay-as-you-query analytics.
DevOps: Build Bridges not Silver Bullets

DevOps: Build Bridges not Silver Bullets

James Dawson

Building a system that solves even just 10% of a problem is a worthwhile endeavour, not just because of the value the 10% delivers but because its mere existence will lower the barrier-to-entry for your colleagues to collaboratively iterate on it - not so much 'Build it and they will come' as 'Build a road and they will come'
Design patterns in C# - The Adapter Pattern

Design patterns in C# - The Adapter Pattern

Carmel Eve

Explore the adapter pattern in this design patterns series, enabling use of incompatible classes within your solution's interfaces/architecture.
Where are you going wrong when choosing to buy, not build?

Where are you going wrong when choosing to buy, not build?

Carmel Eve

Often when building software we need to outsource part of the solution to a third party. Common examples include authentication, payment, and email, but there are many others. When first designing a solution the decision around which provider to use can be difficult to tackle. At endjin we have developed a system for answering the question "which provider should I use?".
How to use Axios interceptors to poll for long running API calls

How to use Axios interceptors to poll for long running API calls

James Broome

Explore using Axios interceptors to streamline UI logic for async HTTP APIs, addressing long-running operations and client coordination efficiently.
How to use SQL Notebooks to access Azure Synapse SQL Pools & SQL on demand

How to use SQL Notebooks to access Azure Synapse SQL Pools & SQL on demand

Howard van Rooijen

Wishing Azure Synapse Analytics had support for SQL notebooks? Fear not, it's easy to take advantage rich interactive notebooks for SQL Pools and SQL on Demand.
Streamline .NET Dependency Management with NuGet Meta Packages

Streamline .NET Dependency Management with NuGet Meta Packages

James Dawson

Simplify dependency consumption & streamline integration with meta/virtual NuGet packages and tools like Dependabot.
ArrayPool vs MemoryPool—minimizing allocations in AIS.NET

ArrayPool vs MemoryPool—minimizing allocations in AIS.NET

Ian Griffiths

Tracking down unexpected allocations in a high-performance .NET parsing library.
A simple pattern for using System.CommandLine with dependency injection

A simple pattern for using System.CommandLine with dependency injection

Carmel Eve

Explore building a command line tool with System.CommandLine packages, using dependency injection for quick and easy initialization.
C# 8.0 nullable references and serialization

C# 8.0 nullable references and serialization

Ian Griffiths

C# 8's nullable references feature can clash with common serialization techniques. This article shows how to deal with that.
A simple invite user flow for AAD B2C (without custom policies)

A simple invite user flow for AAD B2C (without custom policies)

James Broome

Explore an alternative "invite user" flow for Azure AD B2C, simplifying authentication without custom policies in SaaS applications.
C# 8.0 nullable references: when methods don't return

C# 8.0 nullable references: when methods don't return

Ian Griffiths

Explore the importance of DoesNotReturn & DoesNotReturnIf attributes in C# 8 nullable references, enhancing their long-standing role in C#.
Deploy an Azure Synapse Analytics workspace using an ARM Template

Deploy an Azure Synapse Analytics workspace using an ARM Template

Ed Freeman

Explore deploying Azure Synapse Analytics workspaces using ARM templates, a popular infrastructure deployment method for organizations.
How to fully initialize types in their constructor with C# nullable using the async factory pattern

How to fully initialize types in their constructor with C# nullable using the async factory pattern

Carmel Eve

Explore a pattern for async initialization, enabling readonly object construction & leveraging nullable references for fully instantiated classes.

Reactive Extensions for .NET at dotnetsheff

Ian Griffiths

Ian Griffiths is talking about the Reactive Extensions for .NET at dotnetsheff. Learn the ideas behind Rx, and see it applied in an IoT applicable to upload clinical monitoring data to the cloud.
C# 8.0 nullable references: supporting older runtimes

C# 8.0 nullable references: supporting older runtimes

Ian Griffiths

See how to use C# 8.0 nullable references even when targetting older versions of .NET that don't officially support it.