Hi there! I'm Joris, based in the Netherlands. I tinker with software projects, climb at the bouldering gym, and can juggle 5 balls (after much practice).
I recently completed my MSc Mathematics at Leiden University with a thesis on isogeny-based cryptography Decoding CSIDH. I build performance-focused tools in Rust and Python — including a GPU-accelerated search for arithmetic progressions of primes (which broke several records), an MCTS helper for the card game durak running multi-threaded in the browser via WebAssembly, and a tournament planner for padel using linear programming for optimal scheduling.
Selected work

Pet Detective
Solver and solution library for Lumosity's Pet Detective puzzle.
VectorMation
Vector-based math animation engine, an SVG-driven alternative to manim.

Master Thesis
Decoding CSIDH: a guide to isogeny-based cryptography. Leiden University.

Padel Scheduler
Create mathematically optimal padel tournaments.

Durak (web-version)
In-game MCTS helper for the game of durak, using multiple threads and web-assembly.

Bachelor Thesis
Methods for reducing error in approximations of the Rayleigh integral. TU Delft.

Tango
Practice your skills in the LinkedIn tango game!

Practice Math
Tool for practicing math, currently focused on derivatives.
Primes in Arithmetic Progression
GPU-accelerated search for arithmetic progressions of primes, used to break multiple records.
Iscripts
Installation scripts and a detailed setup guide for my Arch Linux configuration.
Durak (terminal-version)
Play the card game durak against a Monte Carlo Tree Search AI, written in Python and Rust.
Diagnostic Questions (NL)
Curated academic references on diagnostic questions in education (Dutch).
