Work
Evidence, not adjectives
A capability list costs nothing to write. These are the problems we were actually handed, and what changed as a result.
Selected work
-
Float stabilisation for a production typesetting engine
A scientific publishing technology supplier
A LuaLaTeX pipeline that placed figures and tables unpredictably at volume: correct on a page, wrong across a run. We stabilised the float behaviour so that the same input produces the same page every time, which is what makes an automated run reviewable at all.
-
A compliance knowledge base that keeps its provenance
A regulatory-compliance venture
Regulatory material — AI Act, GDPR, GxP — assembled into a corpus that can be searched and cited. The design rule was that a retrieved answer must always be traceable to the passage it came from: deterministic where the answer is a fact, human-validated where it is a judgement.
-
XDP — the document platform behind all of it
Xerdi
A LuaLaTeX document framework with a validated data/schema separation: a recipe declares the fields a document accepts, a payload supplies them, and a document that is handed the wrong data fails to build instead of printing it. Every quote, invoice and handbook Xerdi issues is produced by it.
-
The composer: documents generated on demand
Xerdi
A web front end that takes a filled-in form and returns a finished PDF, generated by the same pipeline that produces our own documents. Generation runs in an isolated container with no network and a hard time limit, because the alternative — a typesetter running on visitor input inside the web application — is a shell-escape waiting to happen.
Why some clients are not named
Naming a client on a public page is their decision, not ours. Where we have their agreement on record, we name them. Where we do not, the work is described without them — which costs a little credibility and is still the right way round.
If you are a client and would like your project named here, or named differently, tell us and it changes.
Yours could be the next one
Most of this work started as a document that kept going wrong. Send us yours.