BCS, BSc, MSc, DPhil (Oxon)

Academic Background

I was an undergraduate at Carleton University in Ottawa, Canada during the early 2000s. There I concurrently completed two four year Bachelors: one in Computer Science and one in Mathematics and Physics. I then did a one year Master’s in Engineering Physics at Technische Universität München. In 2008, I moved to Oxford for a DPhil in Theoretical Physics at Lady Margaret Hall, which I finished in 2012. I was a Junior Research Fellow at Christ Church from 2012 to 2016.

When Christ Church began offering Computer Science, I returned as a Lecturer in 2018 and have steadily grown the subject from our very first students. I’m from the Great White North (Canada, eh), but now call Oxford home.

Undergraduate Teaching

I’ve taught almost everything! Though I most often tutor the courses that involve programming and algorithms. I also advise our students on their vacation projects. I strongly believe in learning by doing, and there is nothing better for that than the tutorial system at Oxford.

Outside of Christ Church, I’m involved in the entrepreneurship ecosystem generally and at the Saïd Business School. I lecture in entrepreneurship courses and advise Oxford-based startups.

Research Interests

I’m both a computer scientist and a physicist. Originally I was a statistical physicist, the kind you would find deeply engrossed in Landau and Lifshitz’s “Course of Theoretical Physics”. My focus was biophysics, specifically stochastic processes. For my DPhil thesis, I showed that certain soft matter systems naturally give rise to non-Gaussian fluctuations by deriving their probability distribution from first principles and reconciling some unexplained experiments. During my time as a Junior Research Fellow, I began to specialise in physical optics, scattering, and holography.

Throughout I’ve also worked on several open-source libraries in the Python ecosystem. A particular interest of mine is numerical computing and array-oriented programming, and I can tell you more about the NumPy source code then you’ll ever need!

These days, I design and build embedded devices that measure the three-dimensional shape and material composition of cell populations in real time. Such devices are used commercially for analysis and control in pharmaceutical manufacturing. While the underlying physics is electromagnetic scattering, the modern toolkit of optimisation and, yes, machine learning is increasingly an enabling factor. On any given day, you might find me training a deep neural network, manipulating partial differential equations, or debugging asynchronous low-level code!