Book Review: Django 1.0 Web Site Development

I received Ayman Hourieh’s Django 1.0 Web Site Development from Packt Publishers a few weeks ago for review. I had worked with Django before when I went through another book on Python web frameworks as well as one of their official tutorials. I had my doubts about this book because it was only 257 pages long and I didn’t think it would be able to teach me much in so few pages.

However, I was pleasantly surprised at its readability and the quality of the code examples. I have read a lot of Python books and other programming texts and more often than not, the examples are wanting in one way or another. Some of the books have downright broken examples. Hourieh does a very good job of explaining his code by going through just about everything he wrote line-by-line. While that can get a little monotonous after a while, his meticulousness does make sure that the reader grasps what’s going on.

The main thrust of this book is to teach the audience how to build a social bookmarking application. In fact, that is the only thing you will create in the entire book. The last two chapters are on deploying the application on a web server and improving the application with caching and security enhancements.

I read the core of the book. I didn’t really need to know how to install Django as I had done that before and I didn’t mess with deploying it either since I don’t have a development box at the moment to use for a web server. What I did read was really good.

This book teaches you all the fundamentals you’ll need to create a web application in Django, from start to finish. There were a couple of minor sentence structure goof ups and some lightheartedness that seemed kind of out of place, but other than that, it is a very solid book. You will learn how Django’s user management model works, how to AJAX with jQuery, add voting and commenting to the bookmarking application, create an admin interface using Django’s built-in tools, add some basic searching capabilities, and build a social network where you can invite your friends. If you’ve ever wondered about the internals of a site like Facebook, this book will give you a taste. I should note that the cover implies that it teaches how to build web applications, while the text only really shows the reader how to create one application. The concepts to create other applications are there, but I thought that statement was a little mis-leading.

Overall, I recommend this book. Let me know what you think when you’ve had a chance to read it as well.