About

I’m an associate lecturer in Computer Science and Creative Computing at [Bath Spa Uni(https://www.bathspa.ac.uk/).
I also work with [Bristol Braille Technology CIC]https://bristolbraille.org) developing software for their Canute Scientific multi-line Braille workstation. My current project aims to improve access to mathematics through Braille. As a Braille reader, I’m excited to work on Bristol Braille’s open source projects which improve access to STEM subjects for blind people, and allow them to collaborate with sighted colleagues on an equal footing.
I’ve also produced some demonstration and promotional videos for the Canute, as well as exhibiting with Bristol Braille at sight loss events, most recently Sight Village Central, and demonstrated how the Canute can be used in maths and computer science at New College Worcester.
Watch our demo videos, with Steph Sergeant, director of Vision Through Sound on Bristol Braille YouTube channel.
Projects.
-
Console Graph Theory: born from a transport map application for the Canute and a desire for Braille graphs for a lecture on Monday, I spent a weekend adapting the tactile transport maps to show GraphViz files. I had great fun adding (oddly satisfying) edge scrolling, neighbour and connected component filters, and the ability to annotate and edit the graph, saving it back to GraphViz format.
-
The Creative Industry Challenge students at BSU took the graph viewer and transformed it into an interactive fiction creator and viewer. Aftor all, in computer science, anything can be a graph if you look at it the right way. The Story Tree lets you play stories, containing mini games, on the Canute, as well as work with the story’s tree structure in the graph viewer, and export to twine.
-
twine2canutelib: is a rudimentary Twee viewer that lets you play through a Twine story using the Canute menus. Right now it only supports links, no scripts, although I could be tempted to add to it if I find the time.
-
Multi-line Orca: a fork of the Orca Screenreader for Linux which implements multi-line Braille support for the Canute. A friend hacked a proof of concept in a day, and I ran with it.
-
The same friend modified the Canute BRLTTY driver to have it update from the cursor outwards as opposed to from the top down. I think it’s the best thing ever, and polished it off by adding a config option and a runtime parameter so that modes can be switched to suit the application.
-
Console Chess: a tactile chess game for the Canute — just a fun project for learning Curses and trying out multi-line Braille development, but Bristol Braille liked it, and now it’s on the Launcher Menu!
-
Escapepod: I labelled some buttons in this app, which I still enjoy using today.
Past projects that I’ve let go a bit stale:
-
BusStopNotification: a react native app which calls the bustimes.org api and shows live tracking information for specific buses. The goal was to have it notify you when your bus was approaching so you could start waving madly at any large-sounding vehicles, but PhD corrections happened, and I never got around to it.
-
DeepSpeechTrainer: a react native app (I was working at Mayden and emmersed in web technologies at the time) for submitting voice snippets to be used to customise a TTS model.
-
tag-talk: a simple android app that let you write text strings to NFC tags and read them back using text to speech when they were scanned. It seemed like a good idea at the time, and commercial products that do similar things exist (RNIB Pen Friend and Hable Speech Labels), but I was too lazy to use it. In the end, I just stuck tiny scraps of Brailled Dymo tape on my spices and now I don’t put cumin in my porridge by mistake. .
Academic Qualifications.
I got my PhD from [the University of Bath](https://bath.ac.uk( in 2025, studying cylindrical algebraic decomposition, an algorithm in real algebraic geometry. As part of my work, I extended QEPCAD-B, an open source cylindrical algebraic decomposition program written in C, to produce cells with certain desirable properties.
My undergraduate degree is also in Computer Science.
I went to school in Wales, which means i have a GCSE in Welsh — I might even be able to remember some of the Welsh Braille code.
I studied violin up to grade 6 (ABRSM) at the Royal Welsh College of Music and Drama and also passed Grade 5 practical Musicianship, an oral equivalent to Music Theory, although I haven’t picked up the violin for a while, so I’m very rusty now! I also started learning Braille music, I never got fluent, but I can read basic notation slowly.
Previous Experience.
Before starting my PhD, I was a software developer at Mayden, a healthcare IT company based in Bath, where I worked as part of an agile development team building a web-based patient management system used by mental health practitioners. I worked with PHP, Slim framework, JavaScript, React, and SQL, including database schema design, as well as qualifying as a Certified Scrum Master.