Alexa Chaos Monkey

Hackathon Project
04 Mar 2017

Similar to Netflix’s famous Chaos Monkey, this Amazon Alexa Skill interfaces with Docker, allowing the creation of random containers, fetching of status information, randomly killing containers and even wiping out everything running!

Built at STACS Hack III listed on DevPost

Machine Learning Practical

University Project
16 Jan 2017

MLP is a two-semester practical course covering Machine Learning with neural networks, initially built from numpy, and then using TensorFlow.

The three courseworks entailed experimenting with different nets against the MNIST handwriting and CIFAR 10/100 image datasets.

To help speed up training and testing I built a workload distribution SSH bot, Pub/Sub and data streaming system using Redis, allowing many nets to be trained at the same time on different lab machines, as well as live analysis & graphing.


01 Jan 2017

Currently developing Web systems including the storefront, User-facingn APIs, PCBs + Formware, order management, logistics, production management content management and learning systems.

Hardware work entails development of the control board, ‘Rick’ for Marty the Robot, using a ST Microelectronics STM32 ARM controller. The board has WiFi connectivity, GPIO and 9 servo control channels.


Intelligent Autonomous Robotics

University Project
29 Nov 2016

This task is inspired by ant navigation capabilities. The robot starts at a ‘nest’ and must search for virtual ‘food’ in the environment, collect it and return it to the nest to gain points.

We imlemented Simultaneous Localisation and Mapping (SLAM) in the 2D environment with the Khepera II Robot, choosing to evolve a map as the robot explores rather than use a pre-configured static map.

This project was implemented using Python, Redis and ROS. The above image has the real Rviz (ROS) representation of the robot’s state in that environment superimposed.

Informatics New Students

University Project
12 Nov 2016

Tasked with building a concept website to help students who have recently been admitted to the University of Edinburgh’s School of Informatics.

The site must have a fairly complex set of designed interactions, and cover a range of topics as identifies in a previous Affinity diagram.

We produced a timeline checkbox concept and put emphasis on adhering to the University of Edinburgh’s design style and guidelines.

Live site is here, source code is on GitHub and project report here.

Project received 96% mark.


Internship Summer 2016
26 May 2016

Joined the company just before crowd funding begins, working on Firmware and dedicated control board hardware for the little biped robot ‘Marty’, using an ARM Coretex M4.

I’m also developing APIs and integrations for the robot so it can be used with many popular environments, like Scratch, Python, C++ and ROS.

System Design Project

University Project
01 Apr 2016

Full stack development of a wheeled robot to play two-a-side footbal loosely based on the Robocup SSL

Undefeated in the final tournament set, winning the seeding tournament and performing well in the final tournament.

I’ve written up some aspects of the firmware design here, detailing the use of Gradient Descent error correction and RTOS-like task management.

Firmware is here and the strategy system is published here

Rise Face Detect

Hackathon Project
06 Mar 2016

OpenCV based face detection welcomer, designed to digitise Rise Manchester’s space in a user friendly and easy way. Frontend used Typed.js, Bootstrap and JQuery.

Project GitHub repo, developed at StudentHack IV

See it on DevPost

Winner of the Rise Manchester Challenge: Digitise Rise’s Space challenge.

Carneades Argumentation

University AI Large Practical
22 Dec 2015

Comprised of two parts, the design and development of an input DSL for CAES developed by Ewan Klein.

Secondly, the system was extended to provide an adversarial argument evaluation system, with two prosecution and defence agents attempting to satisfy and defease a specified literal goal, over the argument set. This models burden of proof and multiple proof standards.

Unfortunately code cannot be published due to academic regulations.
Project received 100% practical mark.

The Marauder's App

Hackathon Project
28 Nov 2015

Python Flask webapp, using Redis as a fast data store. I developed the SSH bot that concurrently connected to all the computers in the Lab, updating Redis with their availability, i.e. if someone was on them and who.

Currently running here
Built at HackNotts
See it on Devpost.   Scraper GitHub repository and Front-end/server GitHub repository

Winner Best Use of Braintree PayPal API, University of Nottingham Information Services’ Best Hack awards.

PayPal was used for a ransom-bid mechanic to cause a computer crash (for comedic purposes only, and this feature went away quickly after the hack!)

Update in 2019: Still going strong, the School of Informatics has adopted the project along with current-student contributors.

Possel IRC

UI Development
06 Oct 2015

Developing a web user interface for Possel, a new open-source project to build a better IRC bouncer & client. The focus for the UI is to be media rich and similar to increasingly popular team messaging services like Slack.

Project Github Repository

Content Analysis Tool

Web Development
30 Jul 2015

The tool provides a broad set of market leading metrics for content quality analysis for the company, using Natural Language Processing techniques to derive the inputs to these formulae. (English only)

Built using Python, NLTK - the Natural Language Toolkit, Flask and hosted on Heroku.

Access the tool


Web Design
15 Jun 2015

Web design for Edinburgh University’s World Solar Challenge team, built using Jekyll & Bootstrap.

edinsolar.org (archived)

Site Source Code

Hack the Burgh 2015

Web Dev & Event Management
18 Mar 2015

Web design, event management and event branding for Hack the Burgh, a Major league Hacking student hackathon in March 2015, as part of CompSoc’s 2015 events schedule.

2015 Site

Current Site hacktheburgh.com

Diamond Minding

Web Design
02 Sep 2014

Web design for Diamond Minding Ltd. Blog-aware Jekyll & Bootstrap.


ILW Hackathon Project
18 Feb 2014

Web application built using Python Flask, Facebook’s API & Skyscanner’s flight search API. The application made flight suggestions based on location data from facebook friends and discounted flight rates.