Skip to content

Browse our blogs activity over the years…

  • Jan
  • Feb
  • Mar
  • Apr
  • May
  • Jun
  • Jul
  • Aug
  • Sep
  • Oct
  • Nov
  • Dec
  • Sun
  • Mon
  • Tue
  • Wed
  • Thu
  • Fri
  • Sat
2026
How .NET 10.0 boosted AIS.NET performance by 7%

How .NET 10.0 boosted AIS.NET performance by 7%

Ian Griffiths

.NET 10.0 has shipped, and for the fifth year running, we benchmarked endjin's AIS.NET library and were very happy to see substantial performance gains, with no extra work required.
Adventures in Least Privilege: When an owner isn't an owner

Adventures in Least Privilege: When an owner isn't an owner

James Dawson

A troubleshooting journey through Microsoft Entra ID that reveals the subtle but critical distinction between App Registration ownership and Service Principal ownership - and why it matters for least-privilege automation.
Ix.NET v7.0: .NET 10 and LINQ for IAsyncEnumerable<T>

Ix.NET v7.0: .NET 10 and LINQ for IAsyncEnumerable<T>

Ian Griffiths

Ix.NET 7.0.0 is now available. Because .NET 10.0 now includes LINQ for IAsyncEnumerable, Ix.NET's System.Linq.Async has had to step back. This post explains what has changed and why.
The Data Product Canvas: The Theory Behind The Canvas

The Data Product Canvas: The Theory Behind The Canvas

Barry Smart

The Data Product Canvas fuses the Business Model Canvas with Data Mesh's 'data as a product' principle, combining visual strategic collaboration with product-minded data ownership.
The Data Product Canvas in Action

The Data Product Canvas in Action

Barry Smart

See the Data Product Canvas in action with a real-world scenario. Follow along as we work through each building block to design a high-impact, feasible data product for a national garden center chain facing revenue challenges.
The Data Product Canvas: Deep Dive into the Building Blocks

The Data Product Canvas: Deep Dive into the Building Blocks

Barry Smart

The Data Product Canvas has nine building blocks, best completed right-to-left starting with Audience and Actionable Insight, to keep data products purpose-driven and user-centred.
The Data Product Canvas: Stop Building Data Products That Fail

The Data Product Canvas: Stop Building Data Products That Fail

Barry Smart

Turn data initiatives into business success stories with the Data Product Canvas. This practical framework helps teams design data products that deliver real value, avoid common pitfalls, and align with business objectives.
Building data quality into Microsoft Fabric

Building data quality into Microsoft Fabric

Mike Evans-Larah

Data quality issues are one of the biggest silent killers of analytics initiatives. This post explores how to build data quality into Microsoft Fabric from the ground up.
Top Features of Notebooks in Microsoft Fabric

Top Features of Notebooks in Microsoft Fabric

Jessica Hill

Lakehouse integration, built-in notebook resources, and collaboration features that set Microsoft Fabric notebooks apart from Jupyter and Databricks.
How .NET 10.0 boosted JSON Schema performance by 18%

How .NET 10.0 boosted JSON Schema performance by 18%

Matthew Adams

Benchmarking Corvus.JsonSchema on .NET 10.0 showed an 18% free speed-up on top of .NET 8 and 9 gains — a cumulative 29% boost for LTS upgrades from .NET 8.
Big Data London 2025

Big Data London 2025

Barry Smart

AI agents dominated Big Data LDN 2025, but the real story wasn't the technology, it was which organisations could actually deploy it successfully. After five years tracking industry evolution through this event, one pattern emerged clearly: the winners had built their foundations first. For CTOs making platform decisions now, the strategic imperative isn't choosing between innovation and governance; it's recognizing that governance enables innovation at scale.
FabCon Vienna 2025: Day 3

FabCon Vienna 2025: Day 3

Carmel Eve

FabCon is a conference dedicated to everything Microsoft Fabric. Day 3's sessions included migration, Databricks, Spark optimisation, and more.
FabCon Vienna 2025: Day 2

FabCon Vienna 2025: Day 2

Carmel Eve

FabCon is a conference dedicated to everything Microsoft Fabric. Day 2 featured deep dives into OneLake, Maps in Fabric, and multi-agent AI systems.
Rx.NET v6.1 Now Available

Rx.NET v6.1 Now Available

Ian Griffiths

Rx.NET 6.1 is now available, adding three new features: DisposeWith, a TakeUntil overload that takes a CancellationToken, and ResetExceptionDispatchState.
Batch Processing Triggered Pipeline Runs in Azure Synapse

Batch Processing Triggered Pipeline Runs in Azure Synapse

James Broome

Bursty event triggers in Azure Synapse can fire the same pipeline repeatedly. A batched-trigger orchestrator collapses them into a single coordinated run.
Reliably refresh Semantic Model from ADF or Synapse Pipelines

Reliably refresh Semantic Model from ADF or Synapse Pipelines

James Broome

This post describes a pattern for reliably refreshing Power BI semantic models from Azure Data Factory or Azure Synapse Pipelines.
Reliably refreshing a Semantic Model from Microsoft Fabric Pipelines

Reliably refreshing a Semantic Model from Microsoft Fabric Pipelines

James Broome

This post describes a pattern for reliably refreshing Power BI semantic models from Microsoft Fabric Pipelines.
FabCon Vienna 2025: Day 1

FabCon Vienna 2025: Day 1

Carmel Eve

FabCon is a conference dedicated to everything Microsoft Fabric. Day 1 was mostly focused around the hundreds of new feature announcements.
Supercharge Your Dev Containers on Windows

Supercharge Your Dev Containers on Windows

Mike Evans-Larah

Running VS Code Dev Containers on Windows? Clone repos inside WSL filesystem to eliminate I/O bottlenecks and boost performance dramatically.
Guest Blog Post: Hello World! I'm Ray and I'm doing work experience.

Guest Blog Post: Hello World! I'm Ray and I'm doing work experience.

Matthew Adams

Ray, a Year 10 student, spent a week at endjin doing work experience.
Writing structured data to SharePoint from Synapse Notebooks

Writing structured data to SharePoint from Synapse Notebooks

James Broome

Write data back to SharePoint from Synapse Notebooks using PySpark, the Microsoft Graph API, and Service Principal auth — Drive IDs, tokens, and upload patterns.
Composition, polymorphism & pattern matching with JSON Schema in .NET

Composition, polymorphism & pattern matching with JSON Schema in .NET

Matthew Adams

JSON Schema is compositional, and that's a superpower for code generation, not a barrier. Corvus.JsonSchema turns it into idiomatic, polymorphic .NET types.
Reading structured data from SharePoint in Synapse Notebooks

Reading structured data from SharePoint in Synapse Notebooks

James Broome

This post describes an approach to copy files and data from SharePoint into Azure using Synapse Notebooks.
DuckLake in Perspective: Advanced Features and Future Implications

DuckLake in Perspective: Advanced Features and Future Implications

Barry Smart

Explore DuckLake's advanced capabilities including built-in encryption, sophisticated conflict resolution, and the strategic implications for future data architecture. Understand how DuckLake enables new business models and positions itself against established lakehouse formats.
DuckLake in Practice: Hands-On Tutorial and Core Features

DuckLake in Practice: Hands-On Tutorial and Core Features

Barry Smart

Get hands-on with DuckLake through a comprehensive tutorial covering installation, basic operations, file organization, snapshots, and time travel functionality. Learn how DuckLake's database-backed metadata management works in practice.