Oxford · Maths & Computer Science

Cagan
Yanmaz

I work where abstract mathematics meets real systems — type theory, concurrency, the formalisation of machine learning. This is where I keep my projects and write things down as I figure them out.

Recent writing

All writing →

Selected work

All work →
01

ascii-physics

A 2D physics engine that renders to the terminal — a constraint solver over sparse matrices, pluggable ODE integrators, and composable force generators driving cloth and particle demos in pure ASCII.

  • C++
  • Numerical Methods
  • CMake
02

moodle-downloader

A CLI that bulk-downloads course files from any Moodle instance — API-token or browser-cookie SSO auth (including Shibboleth), resumable SQLite-tracked state, parallel workers, and checksum-based change detection.

  • Python
  • CLI
  • SQLite
03

Werewolf

A backend for hosting werewolf games online — Spring Boot with a hexagonal domain/ports/infrastructure split, WebSocket room events, code-based authentication, and server-driven phase timers.

  • Java
  • Spring Boot
  • WebSocket
04

Differentiation Machine

A small differentiation engine in OCaml — a hand-written parser builds expression trees that are evaluated and differentiated symbolically, with .mli interfaces throughout.

  • OCaml
  • Parsing
  • Symbolic Math