M.A. (Cantab), M.Sc., Ph.D.
The professional era - The computer science era - The biochemistry era
Frm 2009–2015 I worked at Strategy and Technology, Ltd as a senior software engineer (principal software engineer since 2010) programming for interactive TV on various worldwide platforms.Services I have worked on include (but are not limited to):
From 2000–2009 I worked for the BBC as an software engineer (senior software engineer since 2003) programming for interactive TV for Freeview.Services I have worked on include (but are not limited to):
My computer science period commenced when I did an M.Sc. conversion course to Information Technology at Aston University in Birmingham. There my project was on Genetic Programming, tying together my first two degrees.
As the amount of program code that has to be written rises ever further, it would be advantageous for computers to be able to program themselves. (Already today most of the code written is generated automatically.) Genetic Programming is an attempt to use the mechanism of natural selection to evolve computer programs. To an initial primordial ooze consisting of a population of randomly generated programs, one applies the genetic operators of crossover (recombination), reproduction and mutation, selecting the programs according to their fitness for the task in hand. Over the course of many generations evolution takes place to give better programs; and hopefully they eventually manage to solve your problem. GP has been used in certain fields to give comparable results to humans; and in a few cases has given better results than human-constructed solutions.
At Aston I implemented John Koza's original GP system and used it to compare the performance of standard GP, GP with Automatically Defined Functions, Conor Ryan's Pygmy Algorithm, Perkis' Stack GP; and various combinations of these with each other. (This description will also be expanded when I find time.) I also used GP to solve a problem of my own; namely the generation of mazes.
My M.Sc. thesis is now available on-line.
After graduating from Aston with a distinction, I went on to do a Ph.D. at Heriot-Watt University in Edinburgh, on sensor planning for Machine Vision. This consists of, for example, ensuring the camera is pointing at the objects you wish to examine, making sure the features to be identified are not occluded or around the back of the object; making sure the objects are not too large or too small in the field of view, and are in focus, and making sure the lighting is appropriate.
My work was to see whether the problem of sensor planning was amenable to solution using Genetic Programming, thus building on the knowledge from my M.Sc. project. My Ph.D. thesis is available here in zipped PDF (3Mb).
My Ph.D. work was done in C++ and Tcl/Tk.
I took my M.A. at Peterhouse, Cambridge, in Natural Sciences, specialising in Biochemistry; where I worked on producing a model vaccine for HIV by phage display of epitopic peptides. The human immune system isn't good at recognising something as small as a protein, or part of a protein; but if you stick it onto a larger object such as a bacteriophage virus it will mount an immune response against it. My project consisted of expressing both T-Cell Receptor epitopes and antigenic epitopes on the protein coat of bacteriophage fd.
Once released, the colicin can only operate once it has got into other bacterial cells. To do this it must pass through the bacterial membranes; which it does via a mysterious process involving binding to the porin proteins on the outer membrane. This process can be demystified by observing the colicin as it binds to the porin, by means of fluorescence spectroscopy. However if either colicin or porin contain any aromatic tryptophan amino acid residues, they will fluoresce at the same wavelength and swamp out the signal you are looking for. Consequently my project was to engineer a version of the colicin protein that had no tryptophan residues but was otherwise structurally and functionally unaltered.
You can email me at .
Last tweaked: 31 January 2012