How to Think Like a Computer Scientist: Learning with Python
Use the Amazon App to scan ISBNs and compare prices.
"Devoted" by Dean Koontz
For the first time in paperback, from Dean Koontz, the master of suspense, comes an epic thriller about a terrifying killer and the singular compassion it will take to defeat him. | Learn more
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Customers who viewed this item also viewed
Customers who bought this item also bought
The concepts covered here apply to all programming languages and to problem solving in general. -- Guido van Rossum, creator of Python
This book is not just a programming textbook--it is a contribution to the freedom of knowledge. -- Richard M. Stallman, founder of the Free Software Foundation
About the Author
Jeffrey Elkner is a high school math and computer science teacher at Yorktown High School in Arlington, Virginia.
Chris Meyers is a professional programmer who teaches a beginning Python class at Lane Community College in Eugene, Oregon.
- Item Weight : 1.1 pounds
- Paperback : 288 pages
- ISBN-10 : 0971677506
- ISBN-13 : 978-0971677500
- Publisher : Green Tea Press (January 4, 2002)
- Language: : English
- Best Sellers Rank: #1,294,920 in Books (See Top 100 in Books)
- Customer Reviews:
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
FLAWS: Not up-to-date with language features, computer science constructs seem to be somewhat randomly presented (perhaps this is the "muddle") another reviewer complains about, OOP is introduced far to late (in my humble opinion).
ULTIMATELY: Glad I bought it, would buy 2nd edition, have used it as a textbook for university classes.
This is a good guide to programming for the non-programmer. It develops basic procedural and structured software development ideas. It introduces OOP - object oriented programming - with some interesting examples. It concludes with four chapters on data structures.
This is not a systematic survey of the Python language, a book of slick examples for sophisticated programming ( Programming Python , Dive Into Python , Text Processing in Python and Python Cookbook are excellent examples of wonderful Python riffs that exemplify state of the art application of Python to real-world problems. All of these assume some programming sophistication, however). This is a nuts and bolts, hand-holding exploration of some basic ideas of computer science using Python. It does this quite well.
Shortcomings include being somewhat dated. It does not cover some of the newer features in Python, such as list comprehensions or new-style classes. An additional shortcoming is that it reads too much like a traditional computer science text, and relies too much on procedural programming.
I suppose it's time for me to quit griping. I've taught many people to program using this book. It taught me the basics of Python so that I could appreciate Mark Pilgrim's Dive Into Python , which really gave me a feel for the power of the language (granted, I had been developing software professionally for over 15 years at that point).
It is not a reference manual. A second edition needs to be written. I believe that OOP should be introduced much earlier, and can then become a much more natural approach to programming.
If you want a reference manual for Python, or something more advanced than a beginner's text, or something describing up-to-date language features, then keep on searching. Or, download a copy of this and try it out. See if it serves your needs. A link to the free download can be found at the Python ORGanization site.
But unlike the free download, you can set this on your desk next to your keyboard. After the first several chapters in the soft version, I ordered the hardcopy. I have not regretted that decision.
I recommend this book for several types of users. It does make a great first introduction to programming, even covering OOP concepts. It also is a great introduction to the Python language for those with a little programming experience in another language.
You won't find much about all the modules available to Python, but that is not the intent of this book.