I enjoy writing software (mostly Python, some C/Fortran, some other things) to solve the problems in chemistry and engineering for my research. Here’s a semi complete list of things I have worked on.

Software I make


Analyse all your MD results in Python!

MDAnalysis is a Python package which lets you read and write molecular simulation data. I’ve been working on MDAnalysis since 2013(!) and it is how I fell down the rabbit hole of open source software.


Automate your material screening!

GCMCWorkflow is a workflow tool (built on top of Fireworks) for running Monte Carlo simulations of gas adsorption. It doesn’t run the simulations (it wraps around Raspa), but instead lets you write large complex workflows to do complex tasks.


Filesystem as a database!

Datreant lets you view your file system as a database, allowing you to filter, sort and search through your data.


A bunch of utilities for Raspa and the CoreMof database. Create/manipulate system inputs and parse outputs.


Allows MDAnalysis to be used in massively parallel ways.


A wrapper around Packmol which lets you pass in MDAnalysis objects into Packmol. This then makes system creation for a variety of simulation programs easier as topology information (bonds etc) is correctly preserved.


A molecular simulation program I developed during my PhD. It is capable of running dual scale/hybrid scale simulations, ie both atomistic and coarse-grained particles at the same time.

Software I’ve contributed to

(Stuff which isn’t really mine, but I liked and used enough to fix things)

  • Fireworks
  • Inspyred