There is a great Reddit thread on The Onion’s migration from Drupal to Django. The Onion was one of the companies that I interviewed for the Drupal for Publishers report. One of the things I mention in the report is that The Onion was running on an early version (4.7) of Drupal. The Onion was one of the first high traffic sites to adopt Drupal and the team had to hack the Drupal core to achieve the scalability that they needed. While versions 5 and 6 of Drupal made substantial performance improvements, The Onion’s version was too far forked to cleanly upgrade.
Still, The Onion benefited greatly from using Drupal. They were able to minimize up-front costs by leveraging Drupal’s native functionality and adapt the solution as their needs changed. Scalability was a challenge but it was a manageable one. Even though forking the code base was not ideal, it was a better alternative than running into a brick wall and having to migrate under duress. The Drupal community also benefited from the exposure and learning that came from The Onion using Drupal. Everybody won &mdash how often can you say that?
I can understand the choice of Django 1.1 (current) over a hacked version of Drupal 4.7. Having built sites in both Drupal and Django, I can also see the appeal of using a Django over Drupal 6.16 (current). Django is a more programming-oriented framework and The Onion has programmers. Django is designed to be as straightforward and “Pythonic” as possible. Drupal tries to make it possible to get things done without writing any code at all; and if you can avoid writing code in Drupal, you should. As a programming framework, Drupal has more indirection and asserts more control over the developer. The Onion’s staff of programmers clearly appreciate the programmatic control that Django affords and they are quite happy with their decision.
Related posts:
- Django Contrib Jacob Kaplan-Moss wrote very good post on the purpose...
- When the Drupal Developer Comes Around Apologies for the totally misused Johnny Cash reference but...
- Book Review: Django 1.0 Template Development I just finished reading Scott Newman’s book Django 1.0...
- Attending Django Master Class I am looking forward to attending a Django Master...
- A test framework added to core of Drupal 7 Dries reports on a 2 day sprint in Paris...


1) That’s a Reddit thread, not a Digg thread. (Look at the URL.)
2) We’re running on an internal Django branch based on Django’s Subversion trunk, so we’re actually much closer to (what will be) 1.2 than 1.1.
Thanks for the comments Tom! I fixed the bad reference. I was thinking of using trunk myself but I was too chicken
The post title sounds like a new recipe.
You point out a great distinction between organizations that have their own developers vs. those that don’t. That completely changes the dynamics of what they are interested in on some levels.
I agree that’s an important factor to keep in mind. Especially for consultants and project managers who might not understand in detail what it takes to cash in on a particular system’s promises.
The Django beginners I’ve seen have the hardest time were those who didn’t understand that frameworks are for programmers.
[...] Seth Gottlieb wrote a great post looking at The Onion moving from one open source CMS to another. [...]
[...] original article referenced discussed how The Onion moved from Drupal, a PHP application platform, to Django, a [...]
Donning on Drupal…
As we prepare to dive into Drupal, I have been reading about the cons and pros of the platform. Based on the reading I have been doing, Drupal sounds very promising; however, I came across an article at Content There which narrates the sequence, and …
we can customize drupal’s core without altering scripts in core modules…in drupal, we can make a module (separating from core) which can alter core functionality, i.e function hook_alter_form…