Distributed Systems and Algorithms project