Writing
Here are some articles I have written. Some of them are writeups of scientific papers I've contributed to, some are tutorials, others are more general blog posts.

Layers of abstraction: Building a Python wrapper for the PDB search API
A good library should hide complexity from users who don't need it, while still letting power users access everything. I rebuilt my Python wrapper for the Protein Data Bank search API from scratch, and this is how I thought about the problem.
#software

2025 Book Review
My ten favourite books from 2025.
#reviews

Learning with LLMs
It is now easier than ever to learn anything we want.
#learning

2024 Book Review
My ten favourite books from 2024.
#reviews

The Apple Vision Pro: A Review
A review of the Apple Vision Pro - a solution eagerly awaiting its problem.
#reviews
GraphQL for the delivery of bioinformatics web APIs and application to ZincBind
A writeup of my review of the use of GraphQL in Bioinformatics.
#scientific-paper

ZincBindPredict—Prediction of Zinc Binding Sites in Proteins
A writeup of the paper on the machine learning component of my PhD.
#scientific-paper

Nobody knows what an 850% increase is, so please stop saying it
You Won't Believe This One Weird Trick for Properly Communicating Large Relative Increases.
#communication

Python Decorators for Beginners
A reasonably advanced feature of the Python language, explained simply.
#tutorial

atomium - a Python structure parser
A writeup of our paper on my atomium python library.
#scientific-paper

Inverse pharmacology: Approaches and tools for introducing druggability into engineered proteins
A writeup of a review on inverse pharmacology that I contributed to.
#scientific-paper

How to Learn Complicated Things
Being able to learn complicated, difficult things is one of the most important skills you can have - but the obvious way to do it isn't the best way.
#learning

ZincBind - The Database of Zinc Binding Sites
A writeup of my paper on ZincBind, the core of my PhD project.
#scientific-paper

Death to FooBar
A common coding practice which helps no one.
#communication

SynPharm: A Guide to PHARMACOLOGY Database Tool for Designing Drug Control into Engineered Proteins
A writeup of the paper on my first Bioinformatics project.
#scientific-paper

Reinventing Programming Wheels
Is it always a good idea to focus solely on things that have never been done before when starting new coding projects?
#learning

The IUPHAR/BPS Guide to PHARMACOLOGY in 2018: updates and expansion to encompass the new guide to IMMUNOPHARMACOLOGY
A writeup of my contribution to the 2018 database release of the Guide to PHARMACOLOGY.
#scientific-paper

Thermal melt circular dichroism spectroscopic studies for identifying stabilising amphipathic molecules for the voltage-gated sodium channel NavMs
A writeup of my first scientifc paper.
#scientific-paper