Why Django
Since 1999, Imaginary Landscape has been using Python to create websites. We began using Zope. Then Ian Bicking, one of our staff programmers at the time, developed Paste and we adopted that. Python frameworks were in their infancy during those early years and we wanted our next step to be stable, solid and widely adopted. So we examined a number of emerging frameworks. Django rose to the top of that list.
Large and active community
When we chose Django, it was a relatively new framework that showed a lot of promise. It has more than lived up to that promise. The enthusiastic community that we found when first looking at Django has grown tremendously, and continues to improve Django on a daily basis.
Automatic admin
Django's bundled administrative interface represents a significant benefit, perhaps its most significant with respect to Imaginary Landscape. One less thing to worry about, one less thing to code, design, account for, play with, spend time on. It decreases time-to-live, which is good for us and our clients.
Thorough documentation
We don't like to spend time puzzling out the hows and whys of a framework. Django is thoroughly documented in a clear and concise manner, which allowed us to hit the ground running. As subsequent releases of Django have come out we've been able to quickly make whatever adjustments are needed by simply reading the documentation. No time wasted on detective work.
Staff reviews
In large part, the decision was made by our development team. We asked what they wanted, asked that they review options without bias and make a recommendation. Django was it.