Microsoft MVP / Microsoft 365

Everything I work out about Microsoft 365, written down.

Software developer and M365 specialist. Notes on .NET, Azure, Intune and Copilot rollouts that survive contact with real tenants, plus reviews of the hardware and software I actually run.

Microsoft MVP.NET / AzureIntune / Exchange Online
a tenant, end to end tracing
  1. 01 Identity and devices Entra ID / Intune / 1,842 devices compliant
  2. 02 Data and labels Purview / SharePoint / Exchange 4 tiers
  3. 03 Services I build .NET 10 / Graph / Azure traced
  4. 04 Copilot on top Grounding scoped to labelled content ring 2
Writing on
.NET, AI, Copilot
Reviews
Hardware + software
Lab
4U / 48 cores / 10GbE
Based in
England, UK
  • Microsoft MVP / Microsoft 365 Apps and Services
  • 4 devices and services tested
  • lab-01 / 48 cores / 256 GB / 10GbE
  • Book: 4 of 14 chapters drafted
  • Writing from England

Browse by service

What is on fire today?

Latest writing

Notes from real tenants

All posts

Hardware and software

Tested, then written up

All reviews
Playwright MCP 0.0.79 review banner: 24 tools exposed, 84ms warm navigate, 31.8k tokens per snapshot

Software · Compute Protocol-level testing

Playwright MCP 0.0.79 browser automation server

Fast, complete and officially maintained. The constraint is not speed, it is that one snapshot of a content-heavy page can eat 31,800 tokens of context.

Version
@playwright/mcp 0.0.79, Playwright 1.63.0-alpha
Runtime
Node 22.23.2, official Docker image
MCP protocol
2025-06-18, streamable HTTP
Tools exposed
24
Jellyfin 10.11.11 review banner: 4.9 second boot, 140 MiB idle memory, 3.79x realtime 1080p to 720p transcode

Software · Compute Partial - wizard only

Jellyfin 10.11.11 media server

Boots in under five seconds and idles at 140 MiB, a fraction of anything else here. Transcoding on a laptop CPU tops out around two 1080p streams.

Version
Jellyfin 10.11.11, single container
Transcode engine
Bundled FFmpeg 7.1.4-Jellyfin, software x264
Tested on
i5-10210U, 4 cores / 8 threads, no GPU acceleration
Boot to API
4.9 s from up -d

The lab

Where the numbers come from

Three compute nodes, one storage node and a switch that has never needed a reboot. Hardware runs the same workload set for at least ninety days, power logged at the wall. Software gets tested in a tenant with real users in it, not a demo tenant.

4
Devices and services tested
90d
Minimum soak before a score
48
Cores in the rack
71
Notes published

Books

What I am writing, and how much of it you can read

Two titles in progress. How much of each one you can read before it ships depends on who is publishing it, and each book says so on its own page.

Writing now Apress Sample chapter

Enterprise Copilot Architecture with .NET

3 of 14 chapters drafted 21%

Chapter 4 is readable here. The rest ships with the book.

Next up

  • 04 Extending Copilot with .NET
  • 05 Grounding, retrieval and the data boundary
  • 06 Identity, consent and least privilege

Read what is public