This book will be for a first or second year undergraduate course in computer science. Assuming that a student already has had one course in programming, the text introduces various topics of computer science, in a way that shows their application and promotes real interest.