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.
- 01 Identity and devices Entra ID / Intune / 1,842 devices compliant
- 02 Data and labels Purview / SharePoint / Exchange 4 tiers
- 03 Services I build .NET 10 / Graph / Azure traced
- 04 Copilot on top Grounding scoped to labelled content ring 2
- Writing on
- .NET, AI, M365
- Reviews
- Hardware + software
- Lab
- 4U / 48 cores / 10GbE
- Based in
- United Kingdom
- 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 United Kingdom
- 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 United Kingdom
Most read this month
Browse by service
What is on fire today?
Latest writing
Notes from real tenants
-
075
Microsoft 365 E3 vs E5: the three cliff edges that actually justify the uplift
Most of the comparison is noise. Three capabilities genuinely stop at E3, and the largest saving is usually in the opposite direction entirely. Microsoft 365 Licensing 14 Aug · 3 min -
074
Configuration Manager goes annual: what it signals, and why co-management is a valid end state
Version 2609 moves ConfigMgr to one release a year. That is a maintenance signal, not a deprecation notice, and permanent co-management remains supported. Intune & Endpoint 13 Aug · 3 min -
073
Microsoft Purview licensing: the cliff edges that decide your bill
What Microsoft 365 E3 actually covers, where it stops, and the two gaps that remove protection without telling you. Purview & Compliance 12 Aug · 4 min -
072
Autopilot device preparation in 2026: what changed and when to stay on classic Autopilot
The app limit went to twenty five, managed installer stopped skipping Win32 apps, and Windows 365 automatic mode reached GA. Hybrid join still is not supported. Intune & Endpoint 12 Aug · 4 min -
071
Rolling out enterprise Copilot without breaking your DLP posture
Sensitivity labels, Graph permissions and the three settings that decide the outcome. Copilot & AI 2 Aug · 2 min
Hardware and software
Tested, then written up
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
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
- 76
- 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.
Enterprise Copilot Architecture with .NET
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