Projects

Major Projects

Evict+Spec+Time

2024

As part of my honours in 2021, I conducted CPU micro-architectural security research. We were looking to exploit instruction Out-of-Order execution to enhance existing cache-timing attacks, which are used to steal private encryption keys from ciphers such as AES. I produced a thesis as a result of my studies. Further research by my peers led to the publication of Evict+Spec+Time: Exploiting Out-of-Order Execution to Improve Cache-Timing Attacks. Source code is available on Github.

Badgifier

2022

Badgifier generates customisable name badges, personal schedules and certificates for WCA competitions, saving organisers significant time and effort. Available here.

Block Keeper

2017

Block Keeper is a cross platform desktop cubing timer. It organises sessions based on events while providing an elegant interface and relevant statistics for speedcubing. Download and more information.

ENFORCE

2016

ENFORCE is an abstract physics puzzle game where an Orb is moved to an End Point using Force Fields. This was a big step up from my previous game, involving level design, music composition and more. It was available on the iOS App Store for free. A port for macOS is available for download. The ENFORCE soundtrack is available on Soundcloud. More information.

Circular

2014

Circular was one of my earliest projects and my first published game. I wrote it during high-school over half a year and learnt a great amount about games and computer graphics. It was available for free on the iOS App Store and was downloaded over 500 times. More information.

Other Projects

DalRT

2019

DalRT is a toy ray tracing graphics library designed to be small and platform independent. This was a fun learning project and an area I’d love to revisit again. Source code available on Github.

Doubloon

2018

Doubloon is a tool for conducting and analysing CPU cache side-channel attacks. It provides a simple interface with graphing and filtering options to empower other researchers. I built this in a research portion of my Bachelor’s degree. Doubloon is available as part of the Mastik toolkit here.

WCA Statistics

2017

My work on a two-part university project exploring visualisation methods for data sets. Includes a static poster with general statistics and an interactive tool for exploring WCA member and event times. More information.

Letter Pair Generator

2017

A small tool for viewing pairs of letters, useful for practising memorisation. Allows for custom sets of letters and removal of same letter pairs. I built this little utility to help practice for blindfolded speedcubing events. Available here.

@tack

2017

@tack is a 2D turn based strategy game. This was a small group project implemented in C++ as part of an object-oriented programming course. Enemies follow predictable moves similar to chess pieces, allowing for interesting strategic scenarios. We incorporated an easy-to-use level format based on text files to build levels. Source code available on Github.

CodePupper

2017

CodePupper is a Discord bot that runs code in a number of popular languages, in chat. This was an experiment for a private server and is horribly insecure, but was helpful in uni. Source code available on Github.

Overflow

2016

Combat bad trash-management habits with Overflow. As your trash fills up, files will begin to ‘overflow’ onto your desktop, reminding you to empty it every now and again. It’s a dumb little utility but kinda fun! The source code is available on Github.

LIFX-Master

2016

macOS menu bar utility to manage LIFX smart lightbulbs on your local network. Turn lights on and off, set colours and set special effects for your lights. I wanted a quick way to control my lamp from my laptop. Source code is available on Github.