My curt goodbye to Movable Type

I had a fantastic rant planned. I was going to trash Movable Type, my former blogging platform. I was going to rip it apart, throw it on the lawn and set it on fire. But alas, I just don’t have the energy.

That’s right. I don’t have the energy. Many of you know me as a prolific ranter, an inclination (or failing? or talent?) in full display here at the jotsheet. But there comes a point at which one’s frustration moves beyond the pale. To dedicate the time to write a suitable, all-encompassing rant would only exacerbate the problem.

I’m not angry anymore. I’m just kind of sad. I mean, I wasted a lot of time on that Movable Type shit. I’m past the denial and the anger; I’ve quietly accepted the trial that was Running a Large Blog Using Movable Type™.

I’m not angry about the 10 minute rebuilds or the 90 second post times. I’m not angry about the 30 second page load times for the admin interface (well, Dreamhost might have been to blame for that, too). I’m not mad that MT’s plugins are less extensive, less flexible, less interesting, and harder to install than WordPress’. I can look past the fact that building a CMS on Perl is, uh, probably not a great idea. I’m okay with the fact that much of the MT enthusiasts from 2003 have moved on to greener pastures. I’m all right with Six Apart placing a commercial license on the creaking mass of Perl code known as Movable Type.

But I do have a couple of things I’d still like to get off my chest, before I put this puppy to bed for good.

Dynamic publishing in Movable Type is a dirty, dirty lie

Jay Allen, oh Jay Allen. How you lied to me. Remember when you said…

Yes, Virginia, Movable Type 3.1x does have dynamic publishing. And it rocks! By switching some or all of your templates to dynamic publishing, you can drastically cut down or eliminate the time it takes to get an entry published or to rebuild your whole blog.

See, the thing is, I talked to Virginia too, and she told me dynamic publishing in Movable Type is a big steaming pile of hippo shit. With peanuts mixed in. I was a pretty freakin’ advanced MT user in my day and I couldn’t get that dynamic mojo workin’ after tinkering with it one night for, oh, 3 hours. How’s a normal sap gonna do it? Eh, Anil?

The lesson of entry_basename

I’ve got just one more piece of MT dirty laundry to air. This is a little story about a field called “entry basename.”

Long ago, most MT blogs had an ID-based permalink. A post might have the URL http://somewhere.com/blog/001293.html. Some enterprising and adventurous bloggers were unhappy with this arrangement and instead changed the permalink configuration to the use the title of the post, e.g. http://somewhere.com/blog/this_is_the_title.html.

An even smaller group of people, myself included, wanted complete control over the permalink structure and used a plugin to get a completely configurable permalink, e.g. http://somewhere.com/blog/custom_permalink.html.

A couple of years after this all went down, Six Apart caught a clue and built into Movable Type 3.2 the ability to specify a custom permalink. (It was there in MT 3.0D but worthless.) The new field was called “entry_basename,” and if you set your entry_basename for a post to “custom_permalink”, it would get the same URL as above. This change was put in by Six Apart to give users more control over the publishing of their blogs, but with the caveat that its intricacies were best left to advanced users:

[I]f you edit the basename of a published entry, it will very likely change the published filename, hence breaking incoming links to the entry.

Armed with this information about entry_basename, I was pretty confident approaching my conversion from MT to WordPress. My thought process was simple:

1. Move my permalink setting into the “entry_basename” field. (Using the custom permalink plugin, it had been stored in the “keywords” field.)
2. Export from MT.
3. Import into WP.

I ran into just one little problem: Movable Type doesn’t export the information. That’s right; they went to all these pains to give their beloved users complete control over permalinks—and even warned with a wagging finger that we ought not to change the entry_basename after publishing, lest we “break incoming links”—yet they didn’t bother to include the field in the export.

This made the field utterly useless for someone in my position, converting from MT to WP, but what’s a heckuva lot worse is what’s happened to MT users switching installations: they lose all their permalinks. For example:

  • Joe builds a blog in Movable Type, version 3.2.
  • Taking note of the fancy new entry_basename field, Joe customizes the permalinks of his blog entries.
  • Joe decides to move his website to a different host.
  • Joe is pleasantly surprised to learn that he cannot export from Movable Type 3.2 on his old host and import in Movable Type 3.2 on his new host. Everything breaks.
  • Joe gives up and moves to WordPress.

The saddest part is that Six Apart knows all this. They acknowledged it in July 2005 and still haven’t bothered to fix it:

Warning: Currently, the export format does not include the basename field. This means if you use this method and you then export your entries, when you import them into a new weblog your assigned basenames will not be carried over.

I’m afraid I still can’t wrap my head around it: Six Apart adds a feature to give its users more control, warns them to be careful not to break links with it, and then provides no way not to break links with it. And they don’t warn their users upon export. And they’ve publicly acknowledged (albeit buried in a note on sixapart.com I spent 20 minutes looking for) the technically minor problem for 14 months yet haven’t done a thing to fix it.

I just don’t understand.

Conclusion

This isn’t a rant. It’s really more of a plea: If you’re thinking about starting a blog, avoid Movable Type. If you’re on Movable Type now and still have a small number of posts, get out while you can. If you’re on a big Movable Type blog—I can pick you out because you fall asleep in your chair during the rebuilds—then pray.

Oh, and one more thing. Six Apart, over the past couple of years, I’ve become intimately aware of your damage control strategy. You troll the blogs looking for criticism of MT and come hat in hand to the comments section, professing to love MT users and blogging and free expression and open source and kittens and Perl and everything else.

Well, don’t bother coming here.

Anil, Ben, Mena, Jay (and Virginia), and anyone else at 6A: do your PR elsewhere. Find another sap to get on MT. Do some database backups at Typepad. Hell, rip off MSN and MySpace and make a new CMS. (Oh wait, that’s Vox.) Just don’t bother me.

30 Responses to “My curt goodbye to Movable Type”

  1. 1
    AdPulp Says:

    The Ongoing Migration To Word Press…

    Now that Tom Sherman has moved his site to the Word Press blogging platform he is angry no more. Yes, this is news. I’m not angry anymore. I’m just kind of sad. I mean, I wasted a lot of time……

  2. 2
    spudart (registered user) Says:

    I like that I can log-in as a registered user here.

  3. 3
    Adam Finlayson Says:

    I don’t know that 1,000 words can be described as a “curt” goodbye. It might not have set anyone’s lawn on fire, but that was fair by most rant standards.

  4. 4
    Tom Sherman (blog owner) Says:

    I have to admit, I got a little carried away. :(

    It was hard to concisely explain the bit about “basename.”

  5. 5
    Patrick Beeson Says:

    As someone that has used both Movable Type, Wordpress and Blogger, I can say there are quirks associated with each one that could be used to say one is better than the others.

    I’ve used MT for almost two years now, and can say that the more I learn, the more I feel comfortable customizing it’s sundry functions.

    Yes, it can be creaky and static publishing sucks. But going dynamic is very easy (contrary to your rant) and speeds things up tremendously (Dreamhost still slows it down).

    I flirted for a few months with Wordpress, and while I loved its UI, I just didn’t have time to learn it’s PHP core at the same time as MT.

    That’s not to say I wouldn’t mind switching back at some point — I just don’t see a benefit for my site at this point in time.

    Yes, MT is overly complicated and the documentation sucks. It’s hard to install, and isn’t built on the latest server-side framework. But it does its job well enough for most blogging and publishing purposes.

  6. 6
    Jeremy Sellors Says:

    I sympathize with your frustrations however I have, incidentally, just finished installing Movable Type 3.32 on Dreamhost and it was much improved over previous installs. The install is a breeze (about 8-10 minutes after upload) with the new install wizard and using SQLite.
    FastCGI is now really simple. Just change the scripts names you want to run FastCGI to .fcgi and change the .htaccess and mt-config.cgi a bit. If you have not burned your boats it might be worth revisiting again later.

  7. 7
    David Nemesis Says:

    It’s certainly way easier to get MT 3.3x running as a brand-new user, and once you’ve used it for a few versions it becomes clear that doing anything outside the narrow parameters of How Six Apart Thinks You Should Do It involves a level of hacking that quickly comes to resemble actual work.

    For example: I was able to transition from the custom-permalink-in-keywords-field method to MT 3.2’s entry_basename by making an MT template that would generate a SQL file which would populate things correctly prior to my first rebuild under the new version. So to avoid losing a bunch of data, I had to make a template, rebuild it, save it to disk, run the generated SQL file on my MT database (after first backing everything up, of course), upgrade MT and then rebuild. That’s an hour I could have been spending looking at porn.

    And every time there’s an upgrade — minor or major — I have to take extra care to make sure my plugins folder isn’t accidentally destroyed. Since MT doesn’t discriminate between bundled plugins and user-installed ones, if I were to simply drag and drop a new MT release onto my FTP server, I’d end up with Feeds.app Lite, StyleCatcher and whatever else 6A has chosen to provide, while losing Markdown and Textile. So basically I have to compile together a custom version of the MT code that includes my regular plugins before I even think about upgrading.

    They did at least incorporate some kind of easy migration from the MT-Tags plugin to the new built-in tagging in MT 3.3. Of course, the migration doesn’t exactly work, leaving one with completely screwed up categories and tags. But I guess it’s the thought that counts.

    Bottom line: I’m dropping MT this month and putting up my own blogging app in Ruby on Rails. I’ve even got a nice little import/export feature from MT. I probably spent less time working out how to move my data onto a completely new platform than I spend trying to keep it from getting messed up across MT releases.

  8. 8
    Tom Sherman Says Goodbye Movable Type - Hello WordPress « Lorelle on WordPress Says:

    […] Tom Sherman of JOTSHEET has written “My Curt Goodbye to Movable Type”, an interesting non-rant of a lot of frustration which pushed him over the edge to move to a WordPress blog. I’m not angry anymore. I’m just kind of sad. I mean, I wasted a lot of time on that Movable Type shit. I’m past the denial and the anger; I’ve quietly accepted the trial that was Running a Large Blog Using Movable Typeâ„¢. […]

  9. 9
    Alastair Rankine Says:

    I think this highlights the need for an open, documented and (reasonably) complete standard for exporting blog content.

    I have been working on just such a thing.

    And yes I’m pretty sure it would have solved the permalink problem.

  10. 10
    Glenn Fleishman Says:

    I’ve found Movable Type acceptable because I ignore a lot of their advice, and make modifications directly to the MySQL tables, as well as use MySQL queries for more sophisticated functions.

    For instance, they told me that because some template wasn’t installed (comment preview) during a 3.1 to 3.2 upgrade that I’d have to create a new blog and do some kind of migration, blah, blah, blah, with my 8,000 entries. Right.

    I copied a single entry in the table for templates and all was well. Very hard, no? This was after a lot of back and forth with tech support.

    Because you can’t cascade templates across blogs, I wrote some perl that lets me model templates for several related blogs in a test blog on MT, then run the script to copy customized versions by directly modified the templates table, including creating new templates entries as needed.

    Since I don’t know all their inner structure, you’d think that because I can write code in an hour that’s worked for me for like a year without any modification that they could also do this.

    I do find a kind of not-making-things-better problem with the MT software. If I needed to recreate my blog in some other software, I would certainly use a variety of SQL queries to try to dump the damn thing.

    Of course, the investment in templates that I’ve made makes it less likely I’ll leave MT.

  11. 11
    Tom Sherman (blog owner) Says:

    Glenn - I used common templates across multiple blogs. I had one blog sitting in a subfolder of the “main” blog, and I referenced the main blogs templates from the secondary blog by using “..” in the File Mapping.

    If Main blog is in: /main

    Main blog’s templates are mapped to: /main/templates

    Secondary blog is in: /main/secondary

    Secondary blog’s templates are mapped to: ../templates

  12. 12
    Böse Worte gegen Movable Type bei Blogschrott Says:

    […] Tom Sherman ist von Movable Type zu Wordpress gewechselt. Er ist wahrlich nicht der erste der diesen Schritt gegangen ist. Im Gegensatz zu anderen wird er jedoch in der Öffentlichkeit ziemlich deutlich was die Gründe für diesen Schritt angeht. [entdeckt bei Michael] […]

  13. 13
    lee Says:

    YOUR POSTS SUCK. THEY ARE NOT APPROPRIATE!

  14. 14
    jason Says:

    I am adding a new blog, and trying wordpress for the first time. Excited about a possible 5 minute install, about to see if that happens.

  15. 15
    Marco Aurélio Says:

    Oh, man, I wish I’ve never heard of Movable Type. Now that I have a five years old blog, with thousands and thousands of entries and comments, I just can’t get rid of MT. I share this pain with all the MT community.

  16. 16
    Shanx Says:

    This post does not seem to be written by someone who knows MT very well, despite claims that he belongs in the inner circle. I am certainly hoping (in vain, I suppose) that MT ports itself to a PHP codebase, but even as it is, and especially with FastCGI, it is just as good as Expressions Engine, and much much better than WP. What is wrong with static templates? Anyone with half a mind could build these templates as “.php” and let templates do the rest of dynamic stuff. For very high traffic sites, static publishing is a big boon. (And yes, I am familiar with eAccelerator type caching engines, but nothing beats pure static serving with Apache and Litehttpd). The templating engine in MT, with all its available plugins, is phenomenal. As for customizing of permalink and basename, I am not sure what the poster is on about. I use RightFields, and port blogs in less than 10 mins.

  17. 17
    Alex Says:

    Okay.. the solutions to these problems detailed by commenters are innacessibly techy, arcane, obscure, painful, and time-consuming. Point being? Movable Type still sucks eggs for exporting (among other things). How the &*$!*, for example, is RightFields supposed to solve this export problem? Oh, well, I just use RightFields. Just use it. You know, just plug in the nifflewanger, make sure the plorkin-pugs are correct, check that hoiker-shponk no field - didn’t you see that the first time!? - then export it. No, you want shvankum sharkum, not shvankum putkim field-ordering! Dumpkeldorf! Why did I even have to explain this to you? Shouldn’t you just know already?

    I am impatient with technologically steeped geeks who behave as if obscure technical things should be so obvious with laypeople. “Anyone with half a mind..” - whatever! Mind you, I’ve kept a Movable Type blog for years, and done some template modifying, tweaked and used some plugins etc. - but it is not intuitive, and it is utterly forbidding to anyone without a fair amount of programming exposure (and can still be quite forbidding even then). It might be more customizable (or might not), but the trade-off is a learning curve which is far beyond practical for nine out of ten bloggers. Or this has been my experience up to version 2. I’ve lost patience with it and am not interested in version 3 - especially not after reading that I’ll be stuck with it outside of drastic actions whose steps are beyond my comprehension.

  18. 18
    >Open Hatch Says:

    MY RANTING COMMENT AGAINST MOVABLE TYPE AND ARCANE BEAKER-BRAINED BOZOS…

    I’m seeking to move some blogs (this one and this one - and a presently secret one :) published under the Movable Type web-application platform to WordPress, because I love the VideoComments plugin available only under WordPress (used here at……

  19. 19
    Open Hatch » Blog Archive » MY RANTING COMMENT AGAINST MOVABLE TYPE AND ARCANE BEAKER-BRAINED BOZOS Says:

    […] So I look for a way to export my entries and import them to WordPress. I poke around and finally find a way. Only a blog entry here illustrates a clincher: Movable Type will not export the URLs of entries. Meaning that all the links to my blog would have to die and be changed to some other format in WordPress. Evidently the URLs could be made available for use, but are not. So my very many links would expire; old links would give error messages. […]

  20. 20
    Visitor801 Says:

    Your site found in Google: http://google.com/search?q=thh

  21. 21
    business card credit processing start credit card processing for business Says:

    discover credit card phone number…

  22. 22
    poker giochi scaricare Says:

    poker per pc gratis…

  23. 23
    poquer com Says:

    super poker…

  24. 24
    poker non online Says:

    party poker reload bonus code…

  25. 25
    poker debutant gratuites Says:

    euro poker gratuites…

  26. 26
    poker en ligne gratuis Says:

    jugar omaha poker en linea…

    That’’s application card credit visa le poker en ligne en français…

  27. 27
    californi card consolidation credit debt Says:

    accept card credit online payment…

    Recently poker tracker gratuites poker totalement gratuites…

  28. 28
    calculator loan payday Says:

    strep poker online…

    Choose 1000 payday loan no teletrack credit card balance transfer deal…

  29. 29
    poker gratuites hold Says:

    first cash advance first time cash advance first choice cash advance…

  30. 30
    online poker räume Says:

    poker regeln texas hold…

Leave a Reply

or Login for hassle-free commenting.

Allowed tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>