Why I like Django

I’ve recently been thinking about why I like Django, and why I’ve ended up spending time with it rather than with something else like TurboGears. It may be largely accidental, in that I came across Django before I’d heard of TurboGears. In fact, my prior experiences with CherryPy lead me to suspect that I’d have been pretty happy with TurboGears, had I discovered it sooner. But Django snared me first.

So why do I stick with Django for my experimentation with web frameworks? Here, in no particular order, is a list of the things it has that I particularly like:

  • A well-designed, easily-navigable, unfussy website, providing access to some excellent tutorials and other documentation
  • A simple, compact template language that forces business logic into the view code, where it belongs
  • A rich set of generic views that allow useful functionality to be delivered with a minimum of code
  • An attractive and highly capable administrative interface to the underlying database, generated for free from the data models

All pretty compelling, as far as I’m concerned. I wouldn’t rule out switching to another framework, but it would have to provide all of the above, and improve on some of it, to tempt me away from Django.

Leave a Reply