Problem-oriented chapters introduce algorithmic concepts in context to motivate diverse learners
Spiral approach to Python language features builds foundational skills incrementally
Over 750 homework exercises and 300 reflection questions promote active learning and problem-solving
30 independent projects encourage exploration across natural, social, and digital humanities disciplines
Comprehensive website with advanced content, solutions, sample code, and data files supports further learning
Summarized by Shop
"Havill's problem-driven approach introduces algorithmic concepts in context and motivates students with a wide range of interests and backgrounds."
-- Janet Davis , Associate Professor and Microsoft Chair of Computer Science, Whitman College "This book looks really great and takes exactly the approach I think should be used for a CS 1 cou