Here you can find some details on the intent of several of my home-brew projects, and their current status.

Web Applications for Particle Accelerators

In my opinion, the future of a large amount of the software needed for particle accelerators, and many other large-scale facilities, is on the web.  Given the proliferation of browser-based applications, this may not be all that surprising for a lot of people, but things move a little slowly in the accelerator world.

In my current lab — MAX-IV — I’ve developed an app to allow proper organisation of the weekly maintenance.  This has become *the* way for new maintenance tasks to be added to the planning, with a large number of users every day, and a stream of feature-requests and bug-reports.  All of which is very satisfying for a developer.

I am currently working on a tool to display the current intended accelerator parameters.  That is, how the accelerators should be set-up by the operators.  This is backed up by a Mongo database, and presented to the user via React & Nodejs.

Linux Kernel Exploration

I have been a Linux user since 2003, except for a few brief years when I succumbed to the allure of OS-X, and have experimented with more distributions than I can count.  I’m comfortable using pretty much any of the major distros — anything based on Debian or Red Hat, as well as Arch, and Gentoo, and a brief foray into the no-training-wheels distros like Slackware and Linux-From-Scratch.

In addition to this, I also once experimented with building my own OS from scratch.  A project that has sadly been lost on the scrapheap that was Google Code…

Despite all this, I had never dived into the Linux kernel itself.  How does memory management work?  How are processes started, paused, killed, etc.?  How much cruft is there in distro kernels that can be peeled away?  Could I ever dream of successfully submitting a patch to the kernel?

At the moment, this is one of my most active hobbies, and one I hope to blog about in the coming weeks.

Raspberry Pi, Arduino, and so much more

IMG_2874As both a hobbyist and a professional, I am tremendously excited by the revolution in cheap, accessible, “hacker”, electronics kits such as Raspberry Pi and Arduino.  As can be seen by my blog, my current interests focus very strongly on exploring the capabilities of these.  I have a strong belief that these little devices can revolutionise the way that modern science is carried out and the way that engineers think about their projects.

I am working in several directions pseudo-simultaneously, and will maintain a list of links at the following page:

Lately I have not been spending so much time on this, and all of the momentum kicked off by these explorations has been hugely accelerated by my friend and partner-in-crime, David McGinnis.

Ontology Logs

In 2012, David Spivak and Robert Kent introduced the idea of Ontology Logs (ologs) as a tool for the representation of knowledge.  The idea for ologs developed out of Category Theory, however the authors, particularly Spivak, has argued convincingly that they are very useful for disciplines well beyond pure mathematics.

Some early experiences with ologs in my work, and in working with a social scientist from a nearby university, demonstrated their power, and led to the development of this project.

My intention is to develop an olog representation of a generic, large-scale, particle accelerator, and to use this to come up with a algorithm to calculate the resilience of these machines against failure of individual functions.  The challenge in this is to write down an olog that is sufficiently generic to represent a broad class of accelerators, while maintaining enough detail to allow detailed calculations to be made.


I own a 10″ Dobson (Skywatcher Newtonian) and a motorised equatorial plane on which it sits.  The simplicity of the Dobsonian mount meant that more of the money spent on this telescope went into the quality of the optics, rather than mount, resulting in a very good optical system for a relatively low cost.

Although the viewing conditions are far from perfect due to my location at the edge of a large town (and very close to two large cities), as well as direct illumination from a streetlight, I have had some considerable luck in observing a significant number of interesting objects.  I much prefer observing directly at the eye-piece, instead of via the screen of a computer, and so do not have an extensive image gallery.  Despite this, I have hacked together a little digital imaging system by deconstructing a commercial webcam for installation directly onto the eye-piece.

Due to the lack of a well defined end goal, this is less of a project, and more of a hobby, allowing me to follow my childhood passion of exploring the night sky.