Built during HackUPC 2018

Notable News

Built during BankterHack. More details soon.



Software Engineering Large Practical – Score – 98.5%
I built an android application called ‘Songle’ where users walk around the Edinburgh campus and collect markers corresponding to song lyrics – they then attempt to guess the song. The specification required that some additional bonus features were added on top of fulfilling the basic game functionality. I added over 10 bonus features the most interesting of which being ‘VS’ and ‘Co-op’ Multiplayer game modes.

I received the following feedback:

“This is an exemplary submission
which goes considerably beyond the bounds of the practical to provide a very impressive
and professional app. Congratulations on your achievement.”


Foundations of  Natural Language Processing- Score – 98%
I wrote an implementation of the Viterbi Algorithm.


Processing Formal and Natural Languages – Score – 92%
I wrote a system that reads simple facts and answers questions about them using Python and the Natural Language Toolkit (NLTK). Report.


Introduction to Computer Systems – Score – 95%
I wrote a parameterised cache simulator in C that reads a memory address trace and provides statistics about cache accesses and hits. Report.


Introduction to Software Engineering – Score – 85%
I worked in a pair to design and implement software to manage food and drink orders in a restaurant. We produced a requirements document, various UML diagrams and a final abstract implementation in Java.  Report on the way.


Reasoning and Agents – Score – 87%
I used Prolog to  calculate the most optimal route for taxis on a small map.


Computer Security – Score- 90%
I completed an in depth security project  involving port scanning, vulnerability scanning, researching the vulnerabilities, sniffing, querying, spoofing and finally designing firewalls to protect against the attacks used.


Database Systems – Score – 97%
I wrote 20 complex SQL queries for two separate assignments.



I’ve completed my own android app, LostPets, to  roughly mark locations where pets have gone missing and provide the user with a notification if they are near one of these locations. Changelist. Blog Posts.

I’m also working on a second project, when I can’t work on LostPets, in Python that periodically checks when a Facebook friend is active. Progress report on the way.

More writeups soon