4th year Computer Science student, University of Aberdeen

Currently studying in the first semester of my final year. With no upcoming events my current running goal is to 'just get out'. On the side I'm trying to learn Go - using kattis as a playground to bash in a new syntax and prep for this year's UKIEPC.


Practical Demonstrator

I currently teach a weekly class for the level 2 Advanced Web Application Development course. The course covers Rails and students build a range of basic web apps over the course of the term. I am paid as the demonstrator for the class.


I used Dokku on Digital Ocean for serializer, luckily I was able to spend a little more time with Docker and Dokku this summer in London. I’ve got a cool side project waiting in the wings that I just need to get round to starting!

2015 Internship with Unboxed

I completed a second summer internship with Unboxed Consulting, a London Rails Consultancy. I wrote a blog post here about what makes for a good internship and featured here on the company blog.

CGI Prize

I received a prize for the highest marks in level 3 computing science.

Student Software Engineering Project

I was the team leader for a group of eight students working on an Aspect-based Sentiment Analysis tool for movie reviews. The project’s source is available on GitHub.


I started listening to podcasts - looking back I ought to have started much sooner. Currently I listen to everything 5by5 RoR, Programming Throwdown and Stack Exchange - I’m also a Changelog Member. They’ve been a great help with longer runs.

Podcasts coupled with serializer have lead to an ever growing number of cool things to check out. This ‘problem’ now lives in its own special Trello board.

Multi User Dungeon Game

I built a MUD terminal game in Java for a course in Distributed Systems.


Being exposed to the power of vim over the summer (thanks to Jack) pushed me to try it out. It hasn’t been easy but I think I’m getting there, disabling the arrow keys in Normal mode was the tipping point - take a look at my vimrc!


There’s nothing more valuable than learning what you don’t know. Codebar is a great way to get out of your comfort zone. While in London this year I was able to attend a good number of the events. I opted to predominantly coach for individual Rails projects - this is much more interesting than tutorials, it’s also a lot more challenging.

I wrote a blog post about some things I’ve learned from tutoring at university and codebar here.

Sub-19 Parkrun

I finally broke the 19 minute mark for a 5k at Inverness event #198

In an attempt to keep up with the social news sites Hacker News and Product Hunt while the workload piled on I built the serializer news reader as a procrastination activity.

After using the tool for some time I bought the domain and began doing a little casual promotion - it ended up on Product Hunt - more here.

I’ve also accumulated a very long reading list. Recently I’ve been keeping a list of some highlights of here - of the articles I do get round to reading.

Argument Workbench

I worked with a fellow student on an semantic search extension to an annotation tool. We built an indexer and Django web app to enable the annotated text to be queried for argumentation features.

I got the chance to write a threaded indexer in Rust and explore the Django framework as well as learn more about Natural Language Processing as a research area.

Upcase Haskell

I completed the Haskel track on Upcase along side a university course, Formal Languages and Computability, that also used the language.


FAT Filesystem

As part of my operating systems class I implemented a basic FAT filesystem in C.


I competed in a team of three in a nationwide programming contest - we were the highest scoring team from Aberdeen beating two 4th year teams.

Brighton Ruby

While with Unboxed I was able to attend my first tech conference. Really great to see more of the community and spend the day by the sea!

2014 Internship with Unboxed

I had a fantastic summer with the folks at Unboxed, a London-based Rails consultancy. Highlights include having a core team member as a mentor, finally understanding CSS specificity and working on a client project. I wrote a more detailed post here, I also featured on the company blog.

BCS Prize

I received a prize for achieving the best overall marks for level 2 computer science courses.

Rails Rumble

I teamed with a fellow student to build a running race time estimator. The idea was too use data from powerof10 to build a basic model for race times. Then given some times by the user we’d be able to find similar runners and make an estimate based on that.

We got most of that in - just not all of it. We didn’t stand a chance against some of the others, Refactor Cop for example! I’m signed up again for this year.

University Teaching Assistant

I volunteered for two semesters as a teaching assistant on the Web Application Development course. The course taught basic full stack development using Rails and jQuery.


While at the Brighton Ruby conference I learned of codebar and attended several times as a coach in the following weeks while I was still in London on internship.

Network for Social Enterprise Project

I worked on short-term project while studying and built a private social network, CMS and analytics platform for social enterprises. We used Rails and Comfy Mexican Sofa to build the site - this was my first paid project. The system was apparently ‘well received’ at an UNESCO conference in July.


Travel Turbine

I worked on Travel Turbine with a fellow student. The application compared various modes of transport within the U.K. and made use of web scraping for data collection. We’ve kept the project on online and I see it as my first ‘useful’ app.

An NSA tool for mass data collection also called Turbine was leaked less than a week after we finished working on the project!

IT Technician with Momentum-iT

After my first year I worked as an IT technician at a local IT company, Momentum-iT. I learned a lot about User Experience & malware. I also got to dust a computer that had lived in close proximity to a deep fat fryer - wouldn’t recommend!

Loch Ness Marathon

I underestimated my first marathon - finishing in 4h:12m, it’ll be sometime before I run another. I think this photo shows just how much underestimation we’re taking about. 2222 for a race number though!


I went to Sweden for the weekend, leaving the British Isles for the first and only time in my life thus far.


I registered as a place to live on the Internet. History of the ‘stack’ has been something like: blogger, tumblr, gh-pages, heroku (rails app), jekyll and now… middleman!

At the same time I started something of a regular blog - I worked at it quite hard posting everyday for a few months. I still try and post about once a month!

Started Parkrun

I started attending Parkrun, a weekly 5k running event. I’ve since attended over 140 times at 20 different events.

Highland Cross

I competed in my first Highland Cross, a 50 mile coast-to-coast duathlon. I’ve been back every year since - though sadly I’ve struggled to improve my time significantly.

Informatics Olympiad

I was the only student at the school to take the Informatics Olympiad test, I had a few days to prepare and attempted the questions in VB.NET. I got 3%.

Started Ruby

As part of the first year web application development course I started learning Ruby. It was quite a change from walled garden of Visual Studio - the extent of my programming experience up until that point.

Enrolled at University of Aberdeen

I enrolled as an undergraduate student at the University of Aberdeen to study BSc Computer Science.

Finished at Dingwall Academy

I completed high school with AAABB Highers and ABC Advanced Highers.


Exploring from my comfort zone of Visual Studio I was able to experiment with XNA, this was a lot of fun. Making games takes a ton of time!


End to End

I cycled from Lands End to John O'Groats on a rather unconventional route encompassing Ireland and the Outer Hebrides.



I started learning event driven programming at school with Visual Basic and Visual Studio. In my final year I built a programming to analyze and score keep badminton games, I’ve since lost the source.


I bought my first programming book ‘AppleScript: The Missing Manual’. I wasn’t particularly committed - at the time I didn’t really see it as programming.


Got me a Computer!

I got my first computer, an Apple iBook G4. I used it for Photoshop (I tried and failed to get past iStock selection - those guys are strict).

I also played Nanosaur 2 and some of the other included games. We didn’t get ADSL until some time after ‘everyone else’ - I got new software by subscribing to Macworld!

Built with Middleman, Slim, Bootstrap Grid & Markdown and as much jQuery as was needed to make that classy fade in animation.