The django mosaic
In one of my more philosophical postings after my birthday I began to muse where things were going and mentioned I’d began fiddling with the Python programming language.
A few days after that I came across an interesting interview with Leah Culver covering the technical architecture of Pownce. One of the most interesting elements was the use of Django to power the site. This decision had particular resonnance with me because Django is a Python powered web framework much like Ruby is to Rails.
Up to now my track record with web frameworks hasn’t exactly been a positive one. Sometime ago I made an active decision to stay away from most of the existing PHP web frameworks (atleast until there was a stand out framework) and used my own MVC pattern which has been tried and tested. My experience with Rails hasn’t been a roaring success either, with the Agile Web Development book sat on my desk gathering dust (heading for three years).
However after reading the interview on Pownce it wet my appetite to find out a little more about this framework. One thing I was curious to gauge was people’s thoughts on where Django stood next to a framework like Rails which to many is the benchmark framework.
Alot has been written on this front you only need to google “django” + “rails” and you’ll be kept amused for along time with people debating the relative merits of each of the frameworks. Ultimately alot boils down to personal preference both are more than capable for standard web app development.
What swung it for me was that Python was the underlying language nothing more. Oh and perhaps this side by side performance comparision of Symfony, Rails and Django. I never realised Symfony was so bloated!
After a week of using it to write a demo application I can honestly say I’m blown away with the framework, some of the highlights for me are:
- MVC
- Object Relation Mapping
- Cruftless URLS
- Integrated admin interface
- Templating system (similar to Smarty including template inheritance)
- Caching
- Internationalisation
- Plug and play apps (Sitemaps, Feed generation, Authentication)
Without coming across as a total zealot, what I would say is that as of version 0.96, there are still bits which are a little rough around the edges. Installation on windows for a start, and certain elements of the documentation are slightly contrived or missing key information.
That said the community is really strong, and I am going to make every endeavor to make my contribution to the community.
Reading materials
For a final spoiler, heres a mosaic of all sites currently powered by Django:

No comments
Jump to comment form | comments rss [?] | trackback uri [?]