A bespoke book management system for Potato.
Developed as part of a 4-person team for the Software Project Engineering unit at the University of Bristol.
The backend interfaces with a MySQL database to serve a REST API implemented in Spring. This Java application is then deployed to the cloud. The frontend consists of static HTML using Bootstrap and Vue.js, served by the internal Spring web-server - accessing and mutating the data through the REST API.
A concurrent game of life implementation designed to run on a limited piece of hardware.
Developed as part of a 2-person team for the Concurrent Computing unit at the University of Bristol.
This game of life implementation was written in XC and designed to run on the XMOS xCORE-200 eXplorer. The program runs concurrently across tiles, utilising channels for cross-thread communication. Hardware memory limitations posed interesting challenges, with solutions such as packing the individual "cells" into individual bits of 32/16-bit integers to be as memory-efficient as possible. Each turn, the board is split up into rows of these packed cells which are then distributed across workers for processing, then returned to the distributor and consolidated back into a single board each turn.