About

I am a third year computer science student with experience developing software in a variety of programming languages. I enjoy finding innovative solutions to programming problems and pushing myself by learning new skills. The following are various pieces of software I’ve worked on either during my education or as personal projects.

Past Projects
Virtual Queue App

This app allows businesses to create online queues that can be joined by QR code or a search function by users. It was created as a second-year group project using the Flutter library for Dart and Google's Firebase to handle encrypting sensitive data.

I was involved in almost all areas of the project (such is the nature of an intimate 5-man team) but was particularly involved in developing the business dashboard, which allowed businesses to create and edit their queues as well as view relevant statistics such as the average time spent in queue, amount of people in the queue by hour and weekly users to name a few.

This project allowed me to develop teamwork skills on top of gaining an appreciation for the data visualization skills I'm currently using in my final year project

Minecraft Abilities Mod

This was one of the first large scale projects I worked on. A Minecraft mod in which each user received a unique set of abilities and drawbacks for their character. This was my first time both using Java and having access to client's feedback during the development process.

I started by receiving the requirements from 15 friends and having discussions on both feasibility and game balance until all parties were satisfied. I then implemented each custom set of abilities, meeting each client for final tweaks and feedback before the deadline.

This was a very rewarding project, giving me experience with the full development lifecycle and allowing me to practice working with clients to achieve a shared vision.

The Image shows a couple of the in-game information cards that explained player's abilities (spelling was copied verbatim from the client's briefs)

Discord Bot

One of my friends owns a server, which as a group we use for file sharing and hosting game servers. A unique problem we faced was the inability to change to a static IP. As a result, I spent an afternoon creating a python bot to sit on the server and provide the IP whenever it changed.

It has since experienced a series of revisions improving the quality of code and gaining a multitude of useful features including notes, delayed messaging and status monitoring.

Data Warehousing Coursework

During the first semester of third year, I was assigned coursework to design and build a data warehouse for a theoretical website, this website collects data for hundreds of companies worldwide and requires a way to store and analyse the data.

I decided to design a data warehouse using a galaxy diagram with two fact tables, the first centred on sales and the second on different customer 'sessions'. The data warehouse was created using PostgreSQL and populated with provided dummy data.

Current Projects
3D Modelling

By all accounts I should not have tried to 3D model. I have never had anything resembling artistic talent, despite this I thought it could be a fun challenge, so I downloaded Blender to give it a shot and…

I was awful.

In spite of this, I found myself enjoying the creative process and decided to stick with it. I've enjoyed developing a skillset that has gone unused for so long and it's led to an increase in my patience with myself. Despite my initial misgivings I'm glad that I dipped my toes into this alien world, if only at a basic level.

Final Year Project

For my final year project, I am developing a cross-platform application that uses publicly available data to provide personalized insights to users who are looking to relocate within the country. It is currently only in the research and design phase, though when I have made satisfactory visual progress, I will upload an image.

The app uses various public datasets comprised of crime, pollution and cost of living data to name a few, this is used alongside user's weighted preferences to generate a heatmap aiding them in important decisions when moving to areas they're less knowledgeable in.

The app uses various public datasets comprised of crime, pollution and cost of living data to name a few, this is used alongside user's weighted preferences to generate a heatmap aiding them in important decisions when moving to areas they're less knowledgeable in.