All projects

8 projects · 2021–2026

1 year2 years

Aug 2026Live

Monopoly Board Probability

The 2022 simulation rebuilt as something you can click. Roll, and the board shows where you can land — with the odds solved exactly rather than sampled.

TypeScriptMarkov ChainsProbability
Read more

Built from

Forty squares, solved rather than sampled: 11.5% of turns end in Jail, four times any other square on the board.

Jul 2026Personal Project

n810 GBoard

Gboard rebuilt with the iOS keyboard layout on a toggle. Installs next to the stock one, and ships as a patch rather than an APK.

AndroidAPK ModdingKotlin

The full iOS layout, behind a runtime toggle — beside the stock keyboard, not instead of it.

May 2026Live

n810 Trading Plan (OVTLYR)

Entry and exit signals for the stocks OVTLYR covers. 81% of 780 trades were winners on tickers the system had never seen before.

ResearchData Science

Regime, read from SPY breadth

Crisis
Normal
Extended
0%15%50%100%
81.41%per-trade win rate over 780 trades in unseen tickers

Feb 2025Live

LifeJourney

A journal for iPhone, iPad and Mac that works out what moves your mood — sleep, exercise, HRV, weather, music. All of it stays on the device.

SwiftSwiftUIiOS App

Jan 2025Open Source

Rize Disable on Alt

A Chrome extension that pauses Rize time tracking while you hold Alt.

Chrome Extension
ElsewhereGitHub

Sep 2024Open Source

Obsidian Collapse Linked Mentions

An Obsidian plugin that keeps the linked mentions pane collapsed until you want it.

Obsidian Plugin
ElsewhereGitHub
Linked mentions12
Unlinked mentions4

Collapsed by default, so the note you opened is the thing you see.

Apr 2022Open Source

Monopoly Analysis

The original Python version: half a million simulated games to find out how often each square really gets landed on.

PythonMonte CarloData Analysis
ElsewhereGitHub

Rebuilt as

Four-panel plate from the simulation: the board shaded by how often turns end on each square, the dice distribution against its fair-dice expectation, every square's share of turn endings, and landings against endings on the eight squares where they differ.
500,000 rounds — about 3.1 million turns. Open it full size — it is four panels of small type.

Jun 2021Open Source

Text Recognizer

An Android app that pulls the text out of a photo.

KotlinAndroid App
ElsewhereGitHub