Introduction to Computation and Programming Using Python
"This is the 'computational thinking' book we have all been waiting for! With humor and historical anecdotes, John Guttag conveys the breadth and joy of computer science without compromise to technical detail. This book is perfect for any student who wants to explore the essence of computer science." --Jeannette M. Wing, VP, Head of Microsoft Research International, Microsoft Research"John Guttag is an extraordinary teacher and an extraordinary writer. (Perhaps having been an undergraduate English major -- an uncommon stepping stone to the leadership of the world's top EECS department -- has something to do with this.) This is not 'a Python book' -- although you will learn Python. Nor is it a 'programming book' -- although you will learn to program. It is a rigorous but eminently readable introduction to computational problem solving." --Ed Lazowska, Bill & Melinda Gates Chair in Computer Science & Engineering, University of Washington"There's no such thing as the only computer science book you'll ever need. But if you had to pick only one, this would be a great choice. You'll begin by getting a solid introduction to programming in Python. Armed with that, you'll go hands-on with important computing ideas like random methods, statistics, and optimization, using tools of great theoretical beauty and great practical importance." --Hal Abelson, coauthor (with Gerald Jay Sussman) ofStructure and Interpretation of Computer Programs