Building a Better Submission Form
open.blogs.nytimes.com
open.blogs.nytimes.com
If your data doesn't lend itself to an RDB schema, go with a NoSql/key value store.
Grade: F
Full disclosure: I'm a co-maintainer of 8 contributed modules for Drupal and have 3.5 years experience building websites and associated services (with a variety of tools, including Drupal) for the 3rd largest newspaper conglomerate in North America.
apparently several newspapers run off a Django install, including the newspaper that employed the web developers who wrote it:
EDIT: And I also have done Drupal development for several high-traffic magazine and newspaper sites that get millions of monthly visitors.
Scaling Drupal is somewhat proven, and it seems to work for those sites. But, according to compete.com, the traffic figures (uniques) for March 2010 are:
nytimes.com: 14,008,884
whitehouse.gov: 1,878,251
fastcompany.com: 1,537,072
thenation.com: 491,232
economist.com: 400,613
That is, nytimes.com gets almost 7.5 times the traffic as whitehouse.gov, and almost 35 times the traffic of economist.com. Oh, also, don't forget about.com, which, at 40,511,000 uniques in March 2010, has almost 2.9 times the traffic of nytimes.com.So, there's that. Then, the NYT has some ... unique requirements. Drupal just doesn't cut it for various the reasons, the clearest of which is the need to support all the non-tech-savvy journos and editors who actually create the gargantuan amount of content published by nytimes.com. There is a reason a custom CMS was written.
I'm not arguing that Drupal is the best choice for NYTimes.com, but it's very doable, and hardly the ridiculous option that the OP made it out to be.
Drupal doesn't know how to cache anything at all other than for anonymous users. Start logging users in and your problems really get going around the 200-concurrent-users mark, not the 200,000-user mark. At 80-plus queries per page (which for Drupal isn't very many) the database just dies on its arse even at relatively trivial loads when you have multiple concurrent users.
True for vanilla Drupal, but hardly true for Drupal + modules. You have to keep in mind that Drupal is not some black magic CMS...it's just a PHP framework. No matter what NYT is built in, they likely are employing the same kinds of caching strategies that you can leverage in Drupal. Even if you have 5 queries per page, you're going to need a caching strategy to handle NYT levels of traffic, and Drupal can most likely integrate the same methods. Simple examples include authcache and cacherouter.
What would be the point, again, of working with Drupal? A better photo uploader?
A short list of points to consider are a sprawling detailed and curated taxonomy, aggressive editorial publishing schedules, community integration, feed generation for partners, topics, venues, articles, various multimedia types (slideshow, interactive, audio, video, audio slideshows...)
I could (but won't) go on. No CMS on the market or from the open-source community meet the very unique set of needs (as well as the ones you can't predict).
I moved elsewhere in the company from the CMS group as this was playing out. Previously we'd used a highly customized version of FatWire's CMS which wasn't sufficient for current and future needs.
Hope that helps clarify things.
(Hi bkudria, sorry I missed you at GoogleIO)
"Detailed and curated taxonomy" - supported in Drupal core "Aggressive editorial publishing schedules" - Workflow module "Community integration" - OpenID, Facebook Connect, Organic Groups... "feed generation" - Views module "topics, venues, articles, various multimedia types" - CCK for the data entry and storage, Views + custom templating for the display.