01 · Zenarios
A financial planner that forecasts a household's money, month by month, for life.
Built alone, from the simulation engine to the App Store listing: tax rules for 38 countries and a whole life in one forecast.
Software engineer · Munich
I build products end to end: the engine, the interface, and the film that launches them.
01 · Zenarios
Built alone, from the simulation engine to the App Store listing: tax rules for 38 countries and a whole life in one forecast.
1,000 futures
Fat-tailed returns and drifting inflation, drawn a thousand times, each draw seeded and reproducible. Each line is one future. In 985 of these 1,000, the money lasts.
Real engine output · the app's example household · engine 5.7.0
App Store · web
No account, no ads, and the plan never leaves the device.

02 · Signals
Every comment in 45 subreddits, counted like words: a log-odds score for what is rising today, Theil–Sen and Mann–Kendall for what grows over months.
Lead–lag
Leader-to-follower edges between subreddits, tested for direction and turned into early warnings, then scored by replaying trends planted in the data.
An illustration · drawn on the real configuration of 45 subreddits
LiveTranslate
The browser's microphone streams to Deepgram over a WebSocket, DeepL translates each finished line, and every line types itself out on screen.
A live caption in German, English and Portuguese:Schön, dass ihr da seid.Great to have you here.Que bom que vocês estão aqui.
03 · PaperScores
Papers scored 0–100 on six dimensions, with checklists aligned with CONSORT and related standards, and findings that point to the page they came from, where there is one.
A real scorecard: a narrative review, low on methods by design. The paper isn't named.
Overall score: 30/ 100
04 · Origins
At school I built its web services: a component library, key redemption, and the sign-in.
OpenID Connect
A hand-rolled OpenID Connect provider on the forum's legacy XenForo accounts: consent screens, rate limits, a key pair per client and signed RS256 tokens.
Open source
Reviews, typings, and #13710, which moved the library's errors to TypeScript: +731 −616 across 41 files.
05 · History
A first engineering job at 18, senior a year later, and products end to end since. The full story, with names, is on the history page.
Smaller projects, each with a write-up.
A Fictionary party game for phones, set as a dictionary page under a proofreader's red pen.
stet.metz.ukWhat a car really costs in Germany: every way of getting around, priced month by month, with the answer on the last line.
unterm-strich.metz.ukA trip budget planner with what-if scenarios, where GPT-5 suggests the cost items and plain code does the maths.
A Deno port of validator.js from 2020: 73 string validators with TypeScript types, tests, docs and releases.
segno.js.orgHow the thread works, and other notes.
One line of light through 3D space, driven by native scroll: the raw WebGL2 renderer, the camera and the data behind the metz.uk home page.
Christmas 2019: single sign-on for a Minecraft network, on its forum's accounts. What it needed, what I built in three weeks, what held up, and how I'd grow it today.
How Zenarios simulates up to 1,000 market futures on the phone: Student-t returns, AR(1) inflation, a seeded generator per trial and US market history.