Book review: Python Power

Study group dedicated to learning how to code in the Python language.

Moderators: snarkout, Patrick, dann

Post Reply
User avatar
walter_mellon
Posts: 41
Joined: Fri Apr 20, 2007 1:39 pm
Location: Indianapolis. IN

Book review: Python Power

Post by walter_mellon » Sat Oct 25, 2008 12:46 pm

For those of you looking to get started with Python, here are my impressions of a good recent release:

Python Power: The Comprehensive Guide(2007)
by Matt Tellus
Thomson Course Technology
528 pages
www.courseptr.com

This book was a pleasant surprise. I had previously read Perl Power from the same publisher and found it riddled with typos and errors, making it confusing and frustrating to use. Kind of like Perl! Anyway, Python Power is in a different league altogether. It delivers a lot of meaty content without bogging down in arcane details (like Lutz's Learning Python does), almost error-free, written in a clear, readable explanatory style. Here are some pluses and minuses:

Plus: A very complete chapter on using IDLE to create and edit files, looking at all of the menus item-by-item, and covering the basic debugging features of IDLE.

Minus: Chapter 2, Python Language Overview, briefly mentions a lot of advanced topics, none of which beginners will understand, without explaining any of them in any depth. What's the point of introducing debugging keywords on page 27? Lambda functions on page 32? This chapter could have been eliminated completely and the book would be no worse off.

Plus: An exceptionally clear introduction to objects. I especially liked his discussion of "is a" and "has a" relationships when talking about inheritance and composition, something I found difficult when I was first learning OOP.

Plus: A good chapter on the Standard Library, with sections on the deque, math, regex, and os modules. The last chapter covers the Python Imaging Library, something most Python books don't cover.

Plus: For me the best part of the book is the creation of a WAMP project over the last few chapters. Apache, MySQL, and a Python CGI script are used to build and administer an online book review database. How many beginner's books have projects with such real-world applicability? And with (mostly) open-source tools!

Minus: OK, all of the screen shots are Windows XP, and the project is WAMP, not LAMP. I guess this reflects a demographic reality facing book publishers. I don't think any readers of this forum would have any trouble doing the project on Linux.

Plus: Most Python books have a token, skimpy chapter on TKinter. Telles' chapter, while not exhaustive, provides enough to do useful basic GUIs. Even if you plan to use other widget sets in the future (wxPython, GTK+, Fox, etc.) you should still read this chapter. The treatment of basic GUI concepts such as callbacks, event handling, and layout management will be applicable regardless of which toolkit you eventually end up using. (Just as a heads up, don't repeat my bonehead mistake of using IDLE to experiment with these other GUIs. IDLE is written in TKinter and the callbacks of the different toolkits will conflict with each other. Doh!)

Verdict: A superior first programming book, well-written, with a lot of good content. I would recommend this as your first Python book. Type in all the example programs, do the project, and you will have a good foundation for more advanced work in Python.

Post Reply