I live in London and write code.
I work at Makers Academy. I've also worked at the Recurse Center, Pusher and Ableton.
I've spoken at JSConf, Strange Loop, Codecademy, Rails Girls, Brooklyn JS and !!Con.
An online programming environment for beginners. The user's program is rerun on every keystroke. They can run their program forwards and backwards. Watch this short screencast showing the latest features or try it out.
Git implemented in 1000 lines of JavaScript. I wrote Gitlet to show how Git works under the covers. I wrote it to be readable and commented the code heavily. I used what I learned to write an essay and talk on the innards of Git.
A 2D puzzle platform shooter. Throw crates, set off bombs, fire missiles, stab with your sword. Featured in Kill Screen, PC Gamer and others.
A livecoding interface and programming language for young children. The code is on GitHub.
A micro framework for JavaScript games. Handles collisions, the update loop, canvas rendering and input.
Short, heavily annotated JavaScript programs. So far: Space Invaders, circles bouncing off lines and Gitlet.
My latest record. Download it here. Recorded on my phone in my kitchen in Berlin. My band website.
A Lisp interpreter in JavaScript. Supports if, let, lambdas and closures. I explained the code in this article and this screencast.
A 2D platform shooter. Guns, grenades, parallax scrolling, particle effects. The enemies work in teams. The code is on GitHub. I wrote an article about the collision detection. I talked about the game at JSConf.
A library for building behaviour trees to control game entities. A behaviour tree is a type of state machine that is hierarchical and easier to reason about. I used Machine for the AI in Pistol Slut.