Distributed Systems Programming Assignments