'The Elegant Universe'
by Brian Greene


As someone who is mainly a C++ programmer, with a relatively small amount of Python usage, this book triggered my envy of the high level facilities that Python has built into its standard libraries. In this case it was, of course, Python's networking libraries, but I'm left wondering when C++ is going to stop merely providing libraries that mainly address the last decade's problems, and start to tackle the problems routinely faced by today's application programmers.

Python Network Programming - book cover

The book is very useful, not just because of its excellent explanation of how to use the Python networking libraries, but also because it contains very clear and understandable explanations of network issues and jargon. Indeed, this has become the book I would recommend to a programmer wanting to familiarise him or herself with network programming.

Topics covered include low level socket programming, DNS, basic web, e-mail, protocols, server side programming (including CGI), database clients, SSL, and multitasking servers. I would have preferred a little more discussion of asynchronous servers, but I realise that threading is all the rage at the moment! The only noticeable absence is that there is no section on peer to peer programming, but I guess you can't cover everything in one book.

There are a few idiosyncrasies. For instance, introducing the select() and poll() system calls as a method of multiplexing user client input is a somewhat novel way of going about things - the calls would have been much better introduced in the section on asynch servers, which is their more normal use.

This doesn't, however, detract from the the book's usefulness. I enjoyed reading this book, and it filled in several gaps in my knowledge,

Recommended.

(Book supplied by ACCU)

Alan Lenton
25 May 2005

Python Network Programming
by John Goerzen
1-59059-371-5
Apress 512pp $44.99


Return to the reviews page

Back to the Phlogiston Blue top page


If you have any questions or comments about the articles on my web site, click here to send me email.