I build web applications and the services behind them. This is where I keep my CV, the side projects I have shipped, and ways to reach me.
Selected projects
Farkle
The push-your-luck dice game, solo or online with friends on their own phones.
Mini MATLAB
A MATLAB interpreter written in TypeScript that runs in the browser, with plotting.
Snake
The classic game in the browser, with keyboard and touch controls and a saved high score.
Solitaire
Klondike solitaire in the browser, with drag and drop, one-tap moves and undo.
War
The card game War for two players on two phones. Start a game, send the link, and play live.
Latest experiments
Phone transfer
Connect two phones and send messages and files straight between them over WebRTC. Pair them by scanning QR codes on the same Wi-Fi or a hotspot, with no internet or server involved, or by a code or link when online.
Absolute Pitch
A training rig for perfect pitch. Hear a note and name it, starting with two notes and unlocking the next as you get them right, with your score kept between visits.
Compass
Learn to use an orienteering compass on an OpenStreetMap map around your position. Place the compass, turn the plate and the ring to take a bearing, lock it to the map, and release it to adjust. With the phone's own compass, follow the bearing until the needle is in the shed.
Experience
Senior developer, Forse AS
Lead developer on the customer-facing web platform.
Developer, Previous Employer AS
Full-stack work on internal tools and public APIs.