Assignments, exercises and book examples from CS106A Stanford Course