Hello! I am a computational biophysicist currently working on Fluctuating Finite Element Analysis at the University of Leeds, UK. You can get in touch with me at [email protected]. While you're here, please take a look at my CV and LinkedIn profile!

I have been writing software for 12 years. During this time, I’ve developed websites, games, graphical applications and number-crunching tools in a variety of languages. I’m also a bit of a Linux geek!

Physics, Software

KOBRA: Fluctuating Elastic Rods for Slender Biological Macromolecules

KOBRA elastic rod model diagram

KOBRA is a fluctuating Kirchoff elastic rod algorithm for performing dynamical simulations of slender biomolecules, such as alpha-helices and coiled-coils. It can support parameterisations of objects with arbitrary equilibrium shapes and inhomogeneous, anisotropic material parameters, and it can reach second-scale trajectories of quite large systems on modest workstation hardware. It’s written in C++ and is released, for free, under the GPLv3 free software license. So far, KOBRA has been used to build models of Ndc80C, the SMC complex and Myosin-V, and may soon be deployed to study COVID-19 spike proteins. This page will contain links to the KOBRA publication, download links and installation instructions.

Posted August 7, 2020

Games, Software

Tower of Solomon

Tower of Solomon is a free couch multiplayer tower-climbing game for 2-4 players. Build blocks to climb the tower, and try to outlast the other players. If you die, you turn into a screaming skull, so don’t do that. You can also find the game on my itch.io page.

Posted March 6, 2018

Physics, Software

Coarse-grained Simulations of Myosin-VII Inhibition using FFEA


Myosin-VII is part of the Myosin family of motor proteins. It has a key role in the operation of biological structures in the eye and inner ear. Unfortunately, the dynamics of Myosin-VII and its inhibition are poorly-understood. This article details my use of FFEA (Fluctuating Finite Element Analysis), a coarse-grained continuum simulation package, to model the motion of Myosin-VII, and understand its inhibition behaviour.

Posted February 16, 2016

Engineering, Software

The Sharp Colour Science Tool


One of my responsibilities at Sharp was testing and analysing the type and quality of light produced by LED devices using an integrating sphere. I developed a graphical tool in Python that would automatically interpret spectral power distributions, read metadata from files, compute a large variety of colour metrics, and automatically generate PDF reports.

Posted September 3, 2015

Physics, Software

Visualising Quantum Random Walks in Python


A random walk (sometimes called ‘the drunkard’s walk’ describes the motion of a particle that undergoes a series of random steps. But what happens if that particle is a quantum particle? This article presents a few interesting ways of visualising this motion, using Python and matplotlib.

Posted March 16, 2014