< Articles />
-
Paving the wrong Path: What a Broken Government System Taught Me About Feedback Loops
Last year I was made redundant from an NHS role. Around the same time, the team I worked in got a "new system." Everything that used to live on paper β or, honestly, in something that behaved like a shared Excel sheet β was going digital.
-
Reconstructing cloud identity intrusions from O365 and CloudTrail logs
The uncomfortable truth of modern cloud IR is that there is often nothing to "detect" in the old sense. Attackers don't break in anymore; they log in. CrowdStrike's 2026 Global Threat Report put 82% of last year's detections in the malware-free column, with valid-account abuse behind roughly aβ¦
-
AI as a Laundering Machine: What Software Engineering Taught Me About Accountability
If an employer uses AI to decide whether I'm worth interviewing, we call it innovation. If I use the same technology to write more clearly or work around a disability, we call it cheating. The algorithms haven't changed β only who benefits.
-
The Safety Net Is an Accessibility Feature: ADHD, AI, and How I Actually Build Software
A while back I wrote that you don't need perfect code β you need a safety net that talks back. People read it as an engineering post, which it was. But I left something out. I don't build those systems only because they're good engineering. I build them because they're how I stay functional as aβ¦
-
You Don't Need Perfect Code - You Need a Safety Net That Talks Back
TL;DR β My last post was about catching drift: the moment my config tool's idea of "valid" silently diverges from the real Pyxel framework. This post is about the other half of the same system β what happens the instant a human hits one of those checks. A safety net has two jobs: it has to catchβ¦
-
Testing Against State Drift: Guarding a Config Tool Whose Source of Truth Lives Somewhere Else
TL;DR β I maintain a browser-based configuration tool for ESA's Pyxel detector-simulation framework. Its whole job is to help people write configs that a separate, independently-versioned project will accept. That makes drift β my tool's idea of "valid" quietly falling out of sync with Pyxel's ββ¦