Skip to content
Json Schema Patterns in .NET - Working with tensors

Json Schema Patterns in .NET - Working with tensors

Matthew Adams

Common patterns with C# and JSON Schema - Working with tensors by converting to and from numeric spans.
Json Schema Patterns in .NET - Creating an array of higher rank

Json Schema Patterns in .NET - Creating an array of higher rank

Matthew Adams

Common patterns with C# and JSON Schema - Creating an array of higher rank using nested items array schema, minItems and maxItems.
Json Schema Patterns in .NET - Creating a strongly typed array

Json Schema Patterns in .NET - Creating a strongly typed array

Matthew Adams

Common patterns with C# and JSON Schema - Creating a strongly typed array with items, minItems and maxItems.
Json Schema Patterns in .NET - Constraining a base type

Json Schema Patterns in .NET - Constraining a base type

Matthew Adams

Common patterns with C# and JSON Schema - constraining a base type.
Json Schema Patterns in .NET - Extending a base type

Json Schema Patterns in .NET - Extending a base type

Matthew Adams

Common patterns with C# and JSON Schema - extending-a-base-type.
Json Schema Patterns in .NET - Open vs. Closed Types

Json Schema Patterns in .NET - Open vs. Closed Types

Matthew Adams

Common patterns with C# and JSON Schema - object extensibility with open versus closed types.
Json Schema Patterns in .NET - Reusing Common Types

Json Schema Patterns in .NET - Reusing Common Types

Matthew Adams

Common patterns with C# and JSON Schema - how to reuse common schema in the definition of a type.
Json Schema Patterns in .NET - Data Object Validation

Json Schema Patterns in .NET - Data Object Validation

Matthew Adams

Common patterns with C# and JSON Schema - constraints on a simple data object.
Json Schema Patterns in .NET - Data Object

Json Schema Patterns in .NET - Data Object

Matthew Adams

Common patterns with C# and JSON Schema - the simple data object.
.NET JsonElement and Schema Validation

.NET JsonElement and Schema Validation

Ian Griffiths

Corvus.JsonSchema enables safe use of the very high performance JSON parsing offered by .NET's System.Text.Json.
Data is a socio-technical endeavour

Data is a socio-technical endeavour

Barry Smart

Our experience shows that the the most successful data projects rely heavily on building a multi-disciplinary team.
ASP.NET Core + Razor + HTMX + Chart.js

ASP.NET Core + Razor + HTMX + Chart.js

Howard van Rooijen

How to combine ASP.NET Core, Razor, and HTMX to power interactive Chart.js visualisations.
adr - A .NET Tool for Creating & Managing Architecture Decision Records

adr - A .NET Tool for Creating & Managing Architecture Decision Records

Howard van Rooijen

Architectural Decision Records (ADRs) capture context, options, decisions, and consequences. dotnet-adr is a .NET tool for managing ADRs.
Data and AI Engineering Maturity - Fix our problems before we hit the buffers

Data and AI Engineering Maturity - Fix our problems before we hit the buffers

Matthew Adams

As data and AI become the engine of business change, we need to learn the lessons of the past to avoid expensive failures.
SQLbits 2024 - The Best Bits

SQLbits 2024 - The Best Bits

Barry Smart

This is a summary of the sessions I attended at SQLbits 2024 - Europe's largest expert led data conference. This year SQLBits was hosted at Farnborough IECC, Hampshire.
How to Build Navigation into Power BI

How to Build Navigation into Power BI

Paul Waller

Explore a step-by-step guide on designing a side nav in Power BI, covering form, icons, states, actions, with a view to enhancing report design & UI.
How to access multi-select choice column choice labels from Azure Synapse Link for Dataverse with PySpark or SQL

How to access multi-select choice column choice labels from Azure Synapse Link for Dataverse with PySpark or SQL

Jessica Hill

Learn how to access multi-select choice column choice labels from Azure Synapse Link for Dataverse using PySpark or SQL.
Introduction to Python Logging in Synapse Notebooks

Introduction to Python Logging in Synapse Notebooks

Jonathan George

The first step on the road to implementing observability in your Python notebooks is basic logging. In this post, we look at how you can use Python's built in logging inside a Synapse notebook.
No-code/Low-code is software DIY - how do you avoid DIY disaster?

No-code/Low-code is software DIY - how do you avoid DIY disaster?

James Broome

No-code/Low-code democratizes software development with little to no coding skills needed. But how do you evaluate if software DIY is the right choice for you?
.NET JsonElement Error Handling

.NET JsonElement Error Handling

Ian Griffiths

.NET's System.Text.Json offers very high performance JSON parsing. However, JsonElement's text parsing methods offer a trap for the unwary
Analysing WPF Performance Using ETW and PerfView

Analysing WPF Performance Using ETW and PerfView

Liam Mooney

This post walks through the process of using PerfView to analyse ETW data to get to the bottom of a performance issue in a WPF application.
Wardley Mapping - Exploring the Mining Value Chain

Wardley Mapping - Exploring the Mining Value Chain

Barry Smart

The article explores the opportunities that the AI, digital technology and data present for the mining industry using a technique known as Wardley Mapping.
Developing a new JSON Schema Brand and Website

Developing a new JSON Schema Brand and Website

Paul Waller

Discover Paul's guide on expanding brand collateral for organizations through effective website development and design strategies.
Learn Reactive Programming for FREE: Introduction to Rx.NET 2nd Edition (2024)

Learn Reactive Programming for FREE: Introduction to Rx.NET 2nd Edition (2024)

Howard van Rooijen

Learn Reactive Programming with our free book, Introduction to Rx.NET 2nd Edition (2024), available in PDF, EPUB, online, and GitHub.
Analyzing WPF performance by enabling ETW

Analyzing WPF performance by enabling ETW

Ian Griffiths

WPF makes extensive performance instrumentation available through ETW. However, in modern .NET, it's not obvious how to get hold of it. This blog shows how