I'm a low-level software engineer at Canonical, creators of Ubuntu and a recovering physicist...
PhD Reasearch
I did a PhD in spintronics and magnetooptics, with a focus on the antiferromagnetic material CuMnAs.
Thesis title: New Characterisation Techniques for Thin Film Antiferromagnetic Materials
For this research, I wrote Python and C++ code to do experiment automation/equipment control, GUIs for data/image processing and magnetic simulation works.
I'm primarily interested in bare-metal programming and am currently exploring Rust and Zig. See below for my OS and Bootloader projects.
ArtOS
My hobby x86_32 operating system written in C-style C++. ArtOS is a from-scratch OS project capable of playing DOOM (1993) in userspace, loaded from CD-ROM using asynchronous DMA drivers. Before writing this, I knew basically nothing about operating systems (e.g. I had no idea what a kernel was, or what user-space meant).
ArtInitium
A multi-architecture bootloader written in Zig (0.16.2). ArtInitium aims to provide a clean, portable boot stage across multiple hardware targets.
At Canonical, I work as a low-level engineer, which means I spend my days close to the metal; fixing things like kernel drivers, graphics stack bugs, packaging errors and bootflow issues. FPGAd is my primary work project.
FPGAd
A Rust project for Canonical, necessary for runtime configuration of FPGA devices in Ubuntu Core.
Trivia
He but not Him, because I could never be Him.
- Rock Climbing
- Making (Electronics/Woodwork/CAD)
- ... Many more
- OS development from scratch
- Bootloaders and instruction set architectures (Arm, RiscV and x86)
- Low-level languages (Zig, Rust, C++)
- Physics (optics, electronics, magnetism) and scientific equipment
- LabView, MATLAB and Python written by scientists
- Hot takes on films/games/tv
I used to work as a roofer




