Hello! I’m Daniel, a Software Engineer based in Edinburgh. This is where I note down useful things I don’t want to forget and also where I document some of the personal projects I’ve worked on.

Blog Posts

Python collection classes: a summary

Following on from the C++ collections post, it’s time to create a similar overview page for Python! There are more collection classes than this, but I wanted to revise the basics.

C++ collection classes: a summary

As I work through a bunch of algorithm problems in C++, I thought it would be useful to create a summary of the collection classes built into the standard library.

Running a Code Jam

Recently, a number of teams at work have started to make use of Docker. To improve our Docker knowledge across the company, we organised a Code Jam. We’ve run a number of these events in the past and, after some experimentation, we’ve settled on a format that seems to work well for us.

Docker Cheat Sheet

I’ve been playing with Docker recently, but not enough that I always remember the commands. Here’s my cheat sheet for future Docker use.

Notes from Codility lessons

Codility has a number of lessons online to help candidates prepare for the problems on the site. I figured it might be worthwhile to make a summary of some of the algorithms from the lessons that I more easily forget.

Setting up Jekyll for building GitHub pages

Time to resurrect the old GitHub Pages site! I haven’t really touched this for the last two years, so it’s time I brought the site up to date. One part of this is installing Jekyll locally on my Mac so I can test the site without continually uploading it to GitHub.

Using three.js with TypeScript

I tend to modify more projects than I create, so while I can often remember APIs, I often forget the steps I used to set everything up. Therefore, this page is a future reference for me when I forgot to do all this. (If you haven’t done this before then hopefully this will serve as a good starting point!)