Coursework for Distributed Systems course