Archive for the ‘MovableType’ Category

MovableType and > 250(0) categories

Thursday, February 9th, 2006

Warning: Rambling about work ahead.

I went off on MovableType’s atrocious performance while posting to Lifehacker awhile back. Turns out that one of MT’s biggest performance pain points is the huge number of possible post categories the Gawker sites (including Lifehacker) use - a number that goes well into the thousands. (Why, you ask? Well, narrow topic silos and focused category pages make for good sponsorship opportunities and highly-targeted text ads and great Google-fu, and we’re an advertising-supported business.)

Anyway, we use a plugin for MT that turns categories into “tags,” allowing you to enter categories in a del.icio.us style input box versus the clumsy category dropdown. “Go nuts with tags!” was the editorial edict. So we did, adding categories at a clip. Sadly, we were shooting ourselves in the foot. Rendering the interface with a list of hundreds of tags slowed things considerably, specifically, the “suggest a tag” Javascript on the New and Edit Entry pages. Apparently MT’s not built to handle more than 250 2500 categories per site, and we’re the first to push this limit. (Buh? 2500 is a lot more reasonable than 250. Tx Anil.) Also, apparently MT’s database interface makes what only needs to be one query for one recordset one query PER CATEGORY - thus, hundreds of queries per page request, hence the slowdown. (As a developer, can I just say - WTF, 6A? Anyway.)

Gawker’s solution was to remove the helper Javascript from the MT interface and have us enter tags cold; for me and my co-editors this was unacceptable, given how prone we are to typos and crazy variations of the same tag (”Mac,” “OS X,” “Mac OS X”, “Stuff we like,” “Things we like,” “Books”, “book,” etc.)

Fortunately for Gawker, I don’t have any access to the MT installation or template editing/creation for Lifehacker, so I was a bit handcuffed, not able to do much except complain loudly. Finally, to stop the tag mess from getting worse editorially, I wrote a Greasemonkey script which includes the static category list Javascript from afar on those pages, which is super damn fast AND gives us back the past tag helper. I’d publish that script but it’s got a little too much information about our server setup and is specific to the tags plugin, so I won’t. But you get the idea.

If we can get a category template of that Javascript include publishing every few hours and including newly-created tags (the existing one doesn’t update with new tags, boooo), life will be good.

Now back to our regularly-scheduled programming. (Ha!)

MovableType makes me old and cranky

Monday, November 7th, 2005

Ever since I started posting to Lifehacker several times a day, I’ve developed a deep resentment for the software that publishes the site, MovableType. There are days when it takes between 40 and 50 seconds to publish a single post. Fifty seconds probably doesn’t sound like a long time to you, but when you do it a couple of dozen times a day - what with edits and updates - we’re talking about almost half an hour of my life, snatched from me. I’m a perpetual mugging victim.
I sit at my computer every day watching MT publish each post at the pace of a tiny, moist snail travelling across a vast stone and I can feel myself getting old. Any software that gives you the time to deeply consider the seconds of your life ticking away, any software that makes you hate it by evoking the image of yourself hurdling from cradle to grave while gazing at its wrench logo - this is not software to be used by someone who is not a masochist.
Now, I have to give MT the benefit of the doubt. It may not be MT that’s slow - it may be a non-performant plugin, or the fact that over 20 editors are posting to 17 sites using one MT installation (though that doesn’t seem too unreasonable for a multi-user system). It may be that our servers are shitty (though I doubt it, Nick’s thrown some serious cash at our server situation and hosting facility). The folks at SixApart (one of whom is my friend - hi Anil!) did an amazing thing with MovableType, which was raise the bar for personal publishing systems way higher than Blogger set it.
But that was then.
Now, Gawker’s got a tech team of talented people who are unable to figure out what makes MT so freaking slow even working with SixApart support to figure it out. Now, we’ve got comments publishing in batch - not real-time - because the servers couldn’t handle MT’s heavy republishing process. We’ve got a publishing server sync’ing to front-end web servers - because one server couldn’t handle MT’s heavy republishing process plus the serving of static HTML files which costs, oh I don’t know, nothing. We’ve got ME pulling my HAIR out every day simply trying to get my job done with a tool that, from this user’s perspective, feels nothing but broken. The fact that the TypePad site I contribute to, Misbehaving, is raped by uncontrollable spam comments every day only confirms my distrust of the MT codebase.
My brief experience here with WordPress and a few useful plugins, in comparison, has been heaven.
And so the next raising of the bar.

MovableType [SixApart]