REVIEW - Web Programming - Techniques for Integrating Python, Linux, Apache, and MySQL

Title:

Web Programming - Techniques for Integrating Python, Linux, Apache, and MySQL

Author:

George Kuriakose Thiruvathukal, John P. Shafaee, Thomas W. Christopher

ISBN:

0130410659

Publisher:

Prentice Hall (2002)

Pages:

745pp

Reviewer:

Ratul Bhadury

Reviewed:

June 2004

Rating:

★★☆☆☆

The book's overall objective is to provide a foundation in Python, Linux, Apache web server, and MySQL for developing web-applications. It includes some sample, fully functional web applications developed with these technologies.

I was quite impressed with the chapters dealing with the Python language. Surprisingly the chapters were fairly detailed. Of course, the website tutorial is still an indispensable resource and must still go hand-in-hand with these chapters.

As a novice in Linux I did find the one chapter covering its basics rather lacking including only what the authors felt you would need to know while developing a web application. For example, when dealing with various Unix commands like cat, grep, kill etc., the book only mentions a few of the available switches. I would have preferred if the authors covered more of them and left it up to the readers to decide which ones would be of more practical use. The reader shouldn't expect this book to provide groundwork in Linux; and the authors don't claim it will.

A chapter covers the basics of Internet working and HTTP. This includes a brief history of networking, network models, HTML, transport layer protocols, sockets and ports, HTTP etc. While it does cover topics like the OSI model, which are probably of little practical use, it is nevertheless a good, summarising read.

The chapter on Apache only covered what the authors felt was essential, and that too fairly tersely. I would have also preferred if they could have covered some GUI tools like Comanche. You will definitely need to hit some other books or websites to really understand the Apache topics covered here.

Of course you need to be fairly comfortable with relational databases and SQL in general to understand what's going in the next chapter on MySQL; for those who are, this chapter provides you with enough knowledge to get you started with MySQL. More advanced resources will obviously be required subsequently.

The next few chapters deal with the actual integration of what has been covered till then, in the form of Python CGI programming, various helper modules, and the Slither application framework for Python web programming. These will be of immense help if you already have a project in mind you wish to work on.

I was quite pleased with the book, and would recommend it to anyone wishing for an introduction to these technologies. If you are more experienced I would suggest you strengthen your weaker areas with a more specialised book.


Book cover image courtesy of Open Library.