Projects
Unfortunately, I'm not able to open-source some of these projects as they were developed as part of university courses or with third-party clients.
For work-related projects, see experience.
Staff Workload Tracker
Technologies: Python, Django, Tailwind, Docker
Course: CS4525: Computing Science Projects
Django website for managing staff workload in a university environment. Gave a best-effort algorithmic allocation of staff to tasks dependent on available bandwidth. Supported different types of staff contract and employment hours, as well as different types of courses, projects and administration tasks for precise estimate calculations. Implemented role-based authentication to allow multiple system administrators, with group-based ownership of activities to allow for more granular control.
Supported for both mobile and desktop use. Formerly deployed on an Ubuntu server.
SHA-512 Hash Cracker
Course: CS4028: Security
Developed and tested a SHA-512 hash cracking application in both Python and C++ as part of my Security coursework.
Healthify
Technologies: Python, Flask, Bootstrap, JavaScript, React, Docker, PostgreSQL
Course: CS3028: Principles of Software Engineering & CS3528: Software Engineering and Professional Practice, Group Project
Healthify was an all in one health monitoring application platform for clients to track users on lifestyle medicine programmes, tailored around those with chronic conditions.
The application featured easy-to-use logging systems, gamification and image storage for users, as well as a fully functional administrator config and transactional email service. The application allowed for easy control of data and account deletion and was delivered through a React Progressive Web App, which supported both mobile and desktop use.
The project was developed as part of a team that used agile development principles. I led implementation of industry-wide standard practices, including CI/CD, kanban boards and ran pair-programming sessions.
Cinema Showing Tracker
Technologies: Python, Django, Bootstrap
A collation tool for showtimes and films at Scottish Cinemas which allowed me to schedule my trips more efficiently. Contains automatic data collection from the Cineworld API, and used Selinum and BeautifulSoup4 for data collection through other cinema websites. Used a simple relational database design for lookup transactions between film, cinema and showtime relations.

Drone Delivery
Technologies: Python, C++, ROS2
Course: CS4048: Robotics, Group Project
A drone simulation using ROS2 and Webots. Included an A* algorithm planner for finding optimal routes which simulated pharmacy and drop-off locations for real-life usage.
Radio Data Analysis
Technologies: Python, Google Sheets
Collation of public data using nkd.su API. Data collection was performed through Python, with collation and processing done through MS Access. Analysis was done in Excel and Sheets.
Klotski Solver
Technologies: Python
Course: CS2522: Algorithms and Data Structures
Solver for Sliding-block Puzzle Solver Project as part of Algorithms and Data Structures course. Solved all example puzzles within 60 seconds.
Greg
Technologies: JavaScript
Website to allow students to calculate their grades based on smaller assessments (not guaranteed to improve your grades). Based on a project by kittsville.
GrecCleaning
Technologies: Python
A small program to clean Scottish Census data for Grampian Regional Equality Council.