Those of you trying to determine whether to write your next web application using the Django framework or Ruby on Rails might find this article interesting: it's a comparative case study of the development of a web application using Django and Rails.
In the case study, two developers work from the same specification to implement the same application, with one using Django and the other using Rails. The application, Habitual Readers is a book club's public website. It lets viewers see the books that each book club member has read, as well as their comments for each book. Books are categorized using tags, and additional book information is retrieved from Amazon.
The conclusion that the authors of the article reached was that while each framework has its strengths, there is no clear technical benefit for an experienced Rails development team to switch to Django or vice versa and that Ruby developers should use Rails while people more comfortable with Python should use Django. Here's a table that summarizes the aspects of both frameworks that were investigated:
Factor | Rails | Django |
---|---|---|
Support for model and schema evolution | Integrated framework for schema evolution. | Minimal. |
Internationalization | No support. | Some support. |
Designer Friendly Templates? | Possible, with disciplined practices or use of third-party library. | Yes. |
Third Party Plugin Support | Mature plugin architecture, well used by the community. | Some support via the applications mechanism. |
Javascript Support | Prototype and Scriptaculous bundled with Rails. RJS framework simplifies their use. | Possible, but no direct support for any particular library. |
Flavour | Concise. | Explicit. |
I found this interesting: rather than post it as a web page or a blog entry, the authors of the article are sharing a Google Docs and Spreadsheets document. We'll have to see if more people start sharing documents on the Web this way.
Thanks for the link! Your version of the concluding table is sure prettier than ours.
We published using Google docs just to get some feedback prior to submitting the final version for the proceedings of the Open Source Developers Conference in Melbourne in a few week's time. If we'd known that so many people were going to be interested, we would have published it with a more sensible URL.
Once we're finished, we'll publish the final version of the paper, plus slides and the application spec. Be on the look-out sometime around mid-December.
Cheers!