Although I am a huge Java fan, about a year ago I started a Django based project, I knew that there has to be a better way to develop web applications (without tons of xml). I was right! I decided to buy a book about this framework. I chose APress position, “The Definitive Guide to Django: Web Development Done Right” because of the authors: Adrian Holovaty and Jacob Kaplan-Moss. Jacob used to work for the Lawrence Journal-World, the newspaper in Lawrence, Kansas where Django was developed.
This is the second edition of this book, it is updated for Django 1.1. Adrian and Jacob say that the goal of this book is to make you a Django expert and I confirm it. What is more important, you don’t have to be an expert before reading it. You should have basic knowledge about programming (e.g. if, while, data structures, lists, hashes, variables, classes and objects). It is helpful to have some experience with web development, but it is not necessary. It is strange but you don’t even have to be a Python programmer – I wasn’t. If you don’t know syntax, you can learn it while reading this book.
“The Definitive Guide to django…” is also known as “The Django Book” and it is available for free in the Internet, see http://djangobook.com. Take a look at it, read some chapters and check if it is worth buying. In my opinion it is. You can use online version to find out something during coding but it is much easier to learn and read paper version.
I’ve noticed one flaw, there is no information about unit testing. In my opinion it is very important, because there isn’t any compiler or IDE which shows you problems after for example changing method signature :/ Since you can do unit testing in Python (unittest) and Django supports it (“Testing Django applications”), authors of the book should take it into consideration and mention about it.
Posts Tagged ‘python’
Book review: The Definitive Guide to Django
Sunday, October 18th, 2009Book review: Programming Collective Intelligence
Tuesday, July 14th, 2009Programming Collective Intelligence is a new book from O’Reilly, which was written by Toby Segaran. The author graduated from MIT and is currently working at Metaweb Technologies. He develops ways to put large public datasets into Freebase, a free online semantic database. You can find more information about him on his blog: http://blog.kiwitobes.com/.
Web 2.0 cannot exist without Collective Intelligence. The “giants” use it everywhere, YouTube recommends similar movies, Last.fm knows what would you like to listen and Flickr which photos are your favorites etc. This technology empowers intelligent search, clustering, building price models and ranking on the web. I cannot imagine modern service without data analysis. That is the reason why it is worth to start read about it.
There are many titles about collective intelligence but recently I have read two, this one and “Collective Intelligence in Action”. Both are very pragmatic, but the O’Railly’s one is more focused on the merit of the CI. The code listings are much shorter (but examples are written in Python, so that was easy). In general these books comparison is like Java vs. Python. If you would like to build recommendation engine “in Action”/Java way, you would have to read a whole book, attach extra jar-s and design dozens of classes. The rapid Python way requires reading only 15 pages and voila, you have got the first recommendations. It is awesome!
So how about the rest of the book, there are still 319 pages! Further chapters say about: discovering groups, searching, ranking, optimization, document filtering, decision trees, price models or genetic algorithms. The book explains how to implement Simulated Annealing, k-Nearest Neighbors, Bayesian Classifier and many more. Take a look at the table of contents here, it does not list all the algorithms but you can find more information there.
Each chapter has about 20-30 pages. You do not have to read them all, you can choose the most important and still know what is going on. Every chapter contains minimum amount of theoretical introduction, for total beginners it might be not enough. I recommend this book for students who had statistics course (not only IT or computing science), it will show you how to use your knowledge in practice – there are many inspiring examples.
For those who do not know Python – do not be afraid – at the beginning you will find introduction to language syntax. All listings are very short and well described by the author – sometimes line by line. The book also contains necessary information about basic standard libraries responsible for xml processing or web pages downloading.
If you would like to start to learn about collective intelligence I would strongly recommend reading “Programming Collective Intelligence” first, then “Collective Intelligence in Action”. The first one shows how easy it is to implement basic algorithms, the second one would show you how to use existing open source projects related to machine learning.
You can find more about this book on it’s catalogue page here.