Columns

ADT's Programmers Report: Grab hold of the snake

As a freelance Web programmer, I sometimes have to jump into the middle of a project without a lot of preparation. When a client approaches me to do a job, my focus is on the solution, not necessarily on the tools I must use. And while I prefer to code in PHP, if the client's application is written in Perl, I learn how to program in Perl. A quick scan of my bookshelf reveals books on Perl, PHP, SQL, XML, Active Server Pages and JavaScript.

That being the case, I appreciate books that help you learn a new language or a new tool quickly. If you have to learn Python, then Python Web Programming is one book I'd recommend reading.

The book starts with a short history of the language. The author, Steve Holden (with David Beazley), then proceeds to describe some of the features of Python. It is a good introduction to the language, but much of the material is available online at python.org, the Web site of the Python Software Foundation.

What you will find useful are the sections on network programming, database programming, XML and Web frameworks. For example, Section IV, "XML and Python," includes a discussion of how Python interfaces to the expat parser as well as descriptions of several other packages that provide XML support. Other sections include similar information on the available Python libraries.

If I have any criticism of this book, it is that it is almost too comprehensive. By that I mean the author covers a lot of material that needn't be in the book. For example, in Section III, "Database Programming in Python," Holden devotes an entire chapter to relational database principles. The chapter is certainly well written, but if you already understand these principles, it doesn't help you figure out how to insert and update records.

Python Web Programming by Steve Holden (with David Beazley). New Riders, Indianapolis, 2002.

About the Author

Dan Romanchik is an engineering manager turned writer and Web developer. His current passion is amateur radio. You can read his amateur radio blog at www.blurty.com/~kb6nu.