Mechanical

Three days

"If you'd like to speak to X, press 1. If you'd like to speak to Y, press 2. If you'd like to speak to ..."

All things considered, that's a rather confusing thing to hear in an elevator. Seems the BBC is trying to work out some issues with their phone system.

My first three days have been fantastic. The code is reasonable, there are plenty of tests and there appears to be real project management. Despite a few bureaucratic hurdles, things have been relatively smooth. I see plenty of areas where I can bring my testing background to bear and plenty of other area where the other programmers will be able to teach me new things. I'm quite happy so far :)

Interestingly, the blogging policy appears to be extremely liberal. I can't talk about money, rip on other employees or give away obviously secret information, but other than that, I just need to be "professional" when I talk about them and that's pretty much it.

And that's why I'm allowed to say that the BBC, after spending a lot of time and effort, has finally stopped using Ruby on Rails on one project. After a couple of years, aggressive caching, several high-end servers and a lot of effort at customization, page loads for one application were still taking nine seconds. That's far too long for the Web. Since the BBC has a tendency to write huge applications with tons of data, it appears that they could not get Rails up to the task. They might be using it in the future, but for the time being, it's just not scalable enough.

Oh, and their coffee is crap, but hey, they're British.

  • Current Mood: happy happy
Tags:
not RoR: can you say what the replacement tools are? mod_perl (I can hope?) :)
The tea's probably crap too, but hey, they're the Beeb!
it generally starts by writing bad / overly complex / "clever" code.

I've sped up more than one rails project by _removing_ said "aggressive" caching.
"And that's why I'm allowed to say that the BBC, after spending a lot of time and effort, has finally stopped using Ruby on Rails on one project. After a couple of years, aggressive caching, several high-end servers and a lot of effort at customization, page loads for one application were still taking nine seconds."

Ouch. I'd love to know more about the app. I'm not entirely surprised, though. I'm convinced that some of the ActiveRecord design decisions (e.g. no bind parameter support) are the direct result of MySQL's influence on DHH. And I know you LOVE MySQL. ;)

That being said, scaling large apps like that is *hard*, and there are so many potential bottlenecks (database, network, web servers, hardware) that the grass might not be as green on the other side as you may think. I'll bet whatever framework you/they choose to replace it with (I'm guessing Catalyst) will hit at least some of the same issues.

Anyway, I think if I were starting today from scratch on a very large web app, I would use Merb, not Rails.