Clause & Effect
What it is
Study software for four ISO auditor exams — internal auditor and lead auditor, for both 27001 and 42001. Lessons, question banks, mock exams, written-paper practice, streaks and a daily review that resurfaces whatever you’re about to forget.
This one is private. It needs a login and the accounts are approved by hand, because it exists for my own revision rather than as something to sell. If you want a look, get in touch.
Why I built it
I have ADHD, and the standard revision material for these exams is a wall of PDF. I don’t lack the ability to learn it; I lack the ability to keep reading it. So engagement isn’t a nice-to-have here, it’s the entire design constraint — short lessons, immediate feedback, visible progress, and something to come back to tomorrow.
There’s a second reason. I don’t own copies of the standards, and I’m not going to. That sounds like a problem until you look at what these exams actually test, which is audit practice — planning, sampling, evidence, writing findings — rather than reciting clause numbers. So the content teaches the practice, and anywhere a clause reference appears it carries a flag saying it hasn’t been verified against the source text.
How it works
A static site with the content as JSON, which keeps the whole thing cheap and makes the content reviewable as text rather than buried in a database. Signed out on localhost it runs entirely in the browser; live, it’s Firebase for login and Firestore for progress, so I can revise on a laptop and carry on later on a phone.
The part I’d point at is the validator. Every content change runs through a script that refuses to pass until the structure is sound — and it also counts a specific tell: whether the correct answer tends to be the longest one. It does, in almost every question bank anyone writes by hand, and it lets you pass exams you haven’t learned. Picking the longest option now scores about chance across the whole site, and the validator shouts if that ever drifts back.
There’s also a simulator that plays lessons through the real interface like a very stupid student — answering wrongly on purpose, changing its mind mid-mock, abandoning an exam and resuming it — and fails the build on dead ends, unexplained wrong answers and progress bars that go backwards.
What I’d change
The content is written rather than sourced, so it needs a genuine expert read before I’d trust it for anyone but me — which is most of why it’s private.
The written-paper answers are reviewed by hand rather than marked automatically. That’s honest, because marking free text well is hard, but it does mean the loop only closes when I sit down and review them.
HTMLCSSJavaScriptFirebase AuthFirestore