This post originated from an RSS feed registered with Python Buzz
by Carlos de la Guardia.
Original Post: Learning Website Development with Django: Book review
Feed Title: I blog therefore I am
Feed URL: http://blog.delaguardia.com.mx/feed.atom
Feed Description: A space to put my thoughts into writing.
Django has quickly become one of the leading web development platforms in the Python world. Still, having used Zope and Plone for years and accustomed to their power, I was unwilling to dedicate much time to it, other than reading a few tutorials and creating a simple application just to taste the waters.
This changed a bit when Google's App Engine came around, since its use of Django meant that I better learn a little more if I wanted to try it some time (I missed out on the first 10,000 invites).
That's why I eagerly accepted the offer from Packt Publishing to send me a review copy of their book Learning Website Development with Django, by Ayman Hourieh. A great opportunity to learn more about Django at the perfect time.
The book is aimed at web developers who are not looking to become experts in the framework, but just want to build a "2.0" web application quickly and painlessly. It is expected that they know some Python, but no great demands are placed on other previous knowledge.
Like most titles from Packt, the book wastes little time on introductions and quickly dives into the subject matter. The reader is put to work from the very beginning, and by page 20 Django is installed and the first project created and launched. I like this practical approach. All the code is available at the book's web site, so it's also easy to follow along.
The book is structured around the development of a social bookmarking application ("Social" and "2.0" seem to be mandatory buzzwords around Django, Rails and some other "new wave" frameworks). Without going into too much detail, each chapter introduces the reader to some new Django concepts needed to build specific features into the application. For example, there are chapters focusing on user management, searching, Ajax and administration interfaces.
By the end of the book, the reader has a working application for storing and sharing bookmarks, complete with tags, tag clouds, RSS, Ajax bells and whistles, voting, friend networks and an administrative interface. She also should end up with a good knowledge of what Django can do and how to use its features. A couple of final chapters on deployment and future directions complete the tour and give the reader some insight on what to do next with her newly gained Django proficiency.
Overall, I think the author explains the concepts well enough and achieves his objective of teaching beginners how to build an application with Django. However, if you have a good knowledge of web development and Python, you may find that you need a deeper source of knowledge about Django as a framework (which by the way is readily available at the free online Django book).
At just over 200 pages and at a price tag of US $40, I find the book somewhat expensive, but it covers the ground it promises, so if you just want to quickly get going with your "web 2.0" application, the book could be worth the price.