make the most of Lovereading
Search our site
Persons Unknown by Susie Steiner Read the opening extract of the brand new Susie Steiner book before its publication on 05/04/2018

Python for Software Design How to Think Like a Computer Scientist by Allen B. Downey

Python for Software Design How to Think Like a Computer Scientist


Python for Software Design How to Think Like a Computer Scientist by Allen B. Downey

A no-nonsense introduction to software design using the Python programming language. Written for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging. The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practise each new concept. Exercise solutions and code examples are available from, along with Swampy, a suite of Python programs that is used in some of the exercises.


'I liked this book. The presentation is neat and clean, I might even say cheerful. And I learned a lot, not least of all where higher level languages are going, and the terminology used to express that ... I liked the pace of presentation. I liked the constant stirring of topics: a new feature, a hint on debugging, a few words on programming style, some thoughts on programming principles, then on to the next new feature. It really is a nice mix.'
Scientific Programming

'... explains concepts in clear, readable prose; contains helpful illustrations; and integrates activities to engage its readers.'
Computing in Science and Engineering

About the Author

Allen B. Downey, Ph.D., is an Associate Professor of Computer Science at the Olin College of Engineering in Needham, Massachusetts. He has taught at Wellesley College, Colby College, and UC Berkeley. He has a doctorate in computer science from UC Berkeley and a Master's degree from MIT. Dr Downey is the author of a previous version of this book, titled How to Think Like a Computer Scientist: Learning with Python, which he self-published in 2001.

More books by this author
Author 'Like for Like' recommendations

Loading other formats...

Book Info

Publication date

16th March 2009


Allen B. Downey

More books by Allen B. Downey
Author 'Like for Like'


Cambridge University Press


270 pages


Software Engineering



Lovereading is not only an amazing site, but it's one of my very favourites. It's like visiting a fascinating bookstore, but better.

Rebecca Jayne Barrett

It gives a chance to read about new titles, invites comments from all kinds of readers and is run by such a nice bunch of book lovers.

Joy Bosworth

Discover new authors and enjoy old favourites; oodles of literary gems to uncover at Lovereading with candid reviews from real reviewers.

Emily Wright

I love Lovereading because of its ability to connect people that love books & unite them in a friendly, stimulating & interesting community.

Megan Olwen William

Why I love @lovereadinguk? It's in the name - as dedicated lovers of reading, they are perfect matchmakers for helping me find my next read!

Catherine Jenkins

I love Lovereading for the wonderful like for like author recommendations and for highlighting new books, it's a great resource for readers!


A great place to go to find your next literary escape, and where you don't have to judge a book by its cover!

Suzanne Beney

Lovereading is an amazing place to be, the website is wonderful and to me if I'm sad I'll go here and it cheers me up!

Sophia Upton