Selected work
2026–
A language for stating what must be true of a system, and a compiler that refuses to let you break it. Declare data, behavior, seams, and closures, and a deterministic checker proves on every keystroke that nothing reaches a sealed resource except through its gateway. Ships as a command-line compiler and a desktop IDE.
TypeScript · Electron · Compilers
2026
An empirical series on whether an author's why can be recovered from what the code does. You cannot read a purpose off code when several purposes fit it equally well. Checking a declared purpose beats guessing, but dies when the honest declaration already justifies the behaviour.
Python · Statistics · LLM APIs
2025–
An open-source OAuth2 and OIDC server: complete enough for a real application, small enough that you can read the authorization endpoint and know what it does. PKCE, refresh rotation, introspection, revocation, pushed authorization requests, passwordless flows, and a full consent UI.
ASP.NET Core · OAuth2 · OIDC · PKCE · Razor
2026
An operator that deliberates across several cheap passes, stays silent while unsure, and decides for itself when to answer. Adaptive compute worked but is essentially PonderNet. The orthogonal-synthesis geometry is the one result both new and better, extrapolating well outside its training range.
Python · PyTorch
2025–
A local-first secrets manager, on the premise that secrets belong next to the repository that uses them. Per-repo vaults, AEAD encryption bound at rest to the device through the TPM, Secure Enclave, or Linux keychain. Export is a portable file, passphrase or public-key encrypted.
Cryptography · TPM · Argon2id · X25519
2026
A reading tool for dense academic papers. It clarifies jargon in place, contextualises citations so a reference is a claim you can weigh rather than a bracketed number, and reorganises the text for comprehension while keeping full access to the original.
TypeScript · React · FastAPI · Electron · LLM APIs
2023–24
An experimental x86-64 operating system in C and NASM, from the first sector the BIOS loads to a shell prompt with nothing borrowed in between. Bootloader, 64-bit kernel, bitmap allocator, paging, task switching, drivers, interrupts. Every abstraction has to be built before you can use it.
C · NASM · x86-64
2025–26
An accessible game where the input device is the player, built on UCL's MotionInput and recognised for accessible gameplay with the National Autistic Society. Marching Cubes terrain with chunked SDF streaming and custom triplanar shaders. Gesture input constrains the terrain and the pacing far more than it constrains the input code.
Unity · C# · HLSL · MotionInput
2026
Turns commits, PRs, and issues into release notes people actually read. Reads real history from any public repository, throws away merge commits and dependency bumps, rewrites each change as a benefit rather than an echo of the commit subject, and groups it sensibly.
Next.js · TypeScript · BYOK LLM
Skills
Languages
C# · C · C++ · Python · TypeScript · JavaScript · Java · Haskell · SQL · x86 Assembly · NASM
Identity & crypto
OAuth2 · OIDC · PKCE · JWT · TOTP / 2FA · TPM · Secure Enclave · AEAD · Argon2id · X25519
Machine learning
PyTorch · CNNs · SciPy · NumPy · Statistics · Pre-registered studies · LLM APIs
Web
ASP.NET Core · ASP.NET MVC · EF Core · Razor · Next.js · React · Astro · FastAPI · Tailwind · Zod · Zustand · REST · WebSockets
Data
PostgreSQL · MySQL · MongoDB · Supabase · Elasticsearch · Redis
Systems & graphics
Linux · Windows · WSL · Docker · nginx · Embedded systems · ESP32 · OSDev · Compilers · tree-sitter · GLSL · HLSL · Unity · Electron
Practice
Git · GitHub Actions · CI/CD · TDD · AWS · Google Cloud · Cloudflare
Languages (human)
Turkish (native) · English (fluent)
Outside
Painting · Watch repair · Engraving · Piano · Philosophy · Literature