How to Think like a Computer Scientist: Interactive Edition