Principles of reactive programming - Assignment 1