As I had mentioned several times, I had been frustrated with Typo. Several bugs or misfeatures that really annoyed me, upgrades that had frustrated me, and sometimes the feeling that more or less visible things were broken from time to time in new releases. And while the upgrade problems were mostly because of the need to upgrade Ruby gems, still it was something that was inevitable with Typo apparently, so sticking with Typo meant having to deal with Rubygems, which as you may know I hate.

So, after the last upgrade and the frustrations that came with it, I decided to ask around for good blogging software. The main contenders I had in mind were WordPress and Movable Type. Most of the people who replied talked wonders about WordPress, but I decided to try both. WordPress’ installation was ridiculously easy (I’m talking about installing my own copy, not opening a blog in wordpress.com obviously) and I had a working blog pretty quickly. Also, at least the first impression of the UI is that it’s very slick and easy to use. It shows maturity. Movable Type was easy enough to install, although I did have some problems (mostly due to my own stupidity, but still). The first impression was that Movable Type was much “heavier” and maybe a bit too much for a single, personal blog. So I decided to go for WordPress, which was the one that I had been recommended by most people anyway.

So, the first thing I had to do was exporting the content from Typo’s HCoder so I could import into WordPress. I quickly found some script for Typo that would export in WordPress’ format, for easy import. It worked very well, although I did a problem with the tags: they were treated as normal categories, so I ended up with many categories and no tags (and a huge, horrible, impossible to navigate sidebar with dozens of categories). I started to look around, and I couldn’t find a spec for the wxr format. Maybe I was naive thinking that there would be one, but hey. In any case, eventually I figured out that I had to change the:

<category>rants</category>

to

<category domain="tag">rants</category>

for the tags. The categories had to stay as they were, but luckily for me, all uppercase names were categories, and all lowercase names were tags, so I could do the trick with vim with:

:%s/<category>\([a-z]\)/<category domain="tag">\1/

After that, I could import back all the content, but then I had the next hurdle: the style of the blog. I didn’t mind if the design wasn’t exactly the same, but I was used to the old one and didn’t want to change it too much, so I used the excellent Opera Dragonfly to inspect the styles of the old blog, and I slowly copied the most interesting values (colours and font sizes mostly) to the equivalent CSS classes in the WordPress theme. I’m happy with the result, so I think I’ll leave it as it is for now.

Last, but not least, I wanted to try to keep the old URLs working. I did two things for this:

  1. I added some URL rewrites to keep Typo’s feed URLs working. However, the Atom ones also redirect to the RSS ones, I wonder if that’ll be a problem.
  2. I changed the default permalink settings in WordPress so they matched what I had in Typo. Hopefully almost all blog posts will actually keep the URL and the migration to WordPress won’t be very traumatic. You tell me if I’ve broken anything ;-)

One thing that I don’t like about WordPress’ blog editor is that apparently it doesn’t allow you to write in some Wiki-like syntax, like Markdown or Textile. I know Movable Type does have it, but several other things made me stick with WordPress and I’m happy overall. At least for now ;-)