The “other” switch: From MovableType to WordPress

Somewhat in relation to my last post on my search for new a webhost, I’ve switched from Perl-based MovableType to PHP-powered WordPress. The connection between hosting and the weblog script switch isn’t really obvious, but it will be once I tell you that the server “admin” on the dedicated server that I’m currently on (and sharing with several other guys) showed me that MovableType was causing MySQL load to spike. Not to mention the recent rash of comment spam, a particularly bad case totaling over 400 comment spam from a single source. I can imagine how the rebuilding frenzy brought the server to its metaphorical knees.

Screenshot of WordPress website banner


And that, my friends, is the technical reason I’m being booted from that dedicated server. I was spitting curses when requests to the codefront.net domain were redirected to a “suspended” page yesterday. It turned out that the server admin suspended my account intending to bring it back up, but forgot to. Anyway, I have been refunded my pre-payment for the next 5 months hosting (plus 1 month from July to August), and given my walking orders. So I am now looking for alternative hosting. Of course I don’t think I was being fairly treated, but I’m not going to argue my case here. My advice to you: if you share a dedicated server with several peeps, make sure you appoint a server admin and pay him for it. Have agreements (preferably in contract form) on what would cause account suspension and termination.

Having put that aside, let’s go back to the much more interesting “switch”.

WordPress. Ah written in a language I can understand. And having to tweak certain things to keep this blog as it was when running on MovableType made me delve into the source. And I realize that being based on b2 (another weblog script) has meant that WordPress has a lot of cruft to clean up. But working on a nightly build (2004-08-04), I could see that the developers are hard at work cleaning and firming up the code.

The main beef I have with WordPress is the way it has everything running of a single index.php page. Well, there isn’t anything really wrong with that, but having it this way makes the code a little more complicated when you have to differentiate between a single blog entry page and, say, a category page (which lists several entries and is sort of an index page). WordPress has this is_single() function to tell you which situation you are in. Which is good, except that it isn’t exposed to users. I had to look at the source code to discover that function. I’m not sure if it’s meant to be exposed, but here I am using it because there doesn’t seem to be another way to determine which of the 2 contexts the page being displayed is in. Let me know if I’m wrong here.

Anyway, I’m so glad I persevered and made the switch. It was tedious because the dedicated server was sometimes borked (there were times when FTP didn’t work, shell access definitely didn’t and Apache seemed to have gone down too) today. But other than that, being able to read and understand the source code of WordPress is a very, very uplifting feeling. It makes me want to contribute as a developer.

In short, I’m happier because:

  • I can read PHP code.
  • No more nasty long rebuilds.
  • Visitors can comment with speeds 100X faster (non-scientific estimate). And no more double-postings too.
  • A very nice and fast admin control panel.
  • Comment spam doesn’t bring the server down as easily as for MovableType.
  • There’s a neat “Post Slug” field that you can use to define each entry’s URL. For example, this entry has a URL ending with “movabletype-to-wordpress” instead of “the-other-switch-from-movabletype-to-wordpress”. Frequent readers would have noticed by now that I like long titles.
  • I feel like I can contribute to WordPress (if they’d have me). That is a good feeling because I’ve always wanted to write some MovableType plugins but never got around to it because of my fear of Perl CGI (I can do Perl string manipulation pretty well, just not CGI).
  • Fast is good!

Time to submit some bugs to WordPress Mosquito.

15 Comments & TrackBacks ()

Paper doll icon
minghong's Gravatar

What about double trackbacking? ;-)

Posted by: minghong on August 23, 2004 1am

Paper doll icon
Richard Evans Lee's Gravatar

Aside from my, uh, six, I think, MT weblogs I have one each of WordPress and TextPattern. Haven’t worked much to customize the latter two yet but will be looking for what nifty things you do for WP.

Posted by: Richard Evans Lee on August 23, 2004 2am

Paper doll icon
Steve's Gravatar

Welcome to the world of WordPress :D
You might read this.
It’s pretty useful and rather thorough when it comes to hacking away at WordPress.

Posted by: Steve on August 23, 2004 3am

Paper doll icon
Neil's World's Gravatar

Why I’m not switching to Wordpress
Now that I’ve announced the book, I’ve had a couple of emails on the lines of “So I’m guessing you’re not switching to Wordpress now, huh?”, and indeed I’m not. The book, however, is not the only thing that’s keeping me with MT and I’d like to…

Posted by: Neil's World on August 23, 2004 4am

Paper doll icon
Ed's Gravatar

Are you sure that the comment spam will be reduced by switching to wordpress? I wonder whether a move to the newer version of mt 3.1 (I think) which will come out at the end of the month may have helped you out, and not forced you to move just yet. I have to admit to looking at wordpress, but decided against it, because it involved too much work with redesigns.

Posted by: Ed on August 23, 2004 6am

Paper doll icon
Photo Matt's Gravatar

Redemption in a Switch
Chu Yeow switches to WordPress and has an interesting story. Welcome to the family. :) “I can imagine how the rebuilding frenzy brought the server to its metaphorical knees. […] being able to read and understand the source code of WordPress is a ver…

Posted by: Photo Matt on August 23, 2004 6am

Paper doll icon
girlwonder's Gravatar

i’m not that deep into code or perl strings or php-backend or what have you, but based simply on the rebuilds alone, i think it was worth the switch. and my blog probably doesn’t see the amount of traffic yours does, but since i’ve been using wp (2 or 3 months) i’ve had ONE spam comment, and it was held for moderation - i <3 wordpress.

Posted by: girlwonder on August 23, 2004 8am

Paper doll icon
TedFox's Gravatar

I think Ed will find that wordpress will filter out comment spam alot more effectively…

In addition to that, being non-static, it doesn’t have to rebuild everytime a new comment come in, bringing the server down, if a wave of spam comes in. Of course with MT 3.1, you could put every single page on PHP I guess….

I’ve been waiting to see whether you’ll ever make the switch over to WP. Nice to know you did. haha. Seems like the switch went well?

Posted by: TedFox on August 23, 2004 8am

Paper doll icon
Cheah Chu Yeow's Gravatar

minghong: You’re right I didn’t think of that! No more double TrackBacks too.

Ed: I’m not saying that comment spam will be reduced. I’m saying that there won’t be any nasty rebuilds when I get comment spammed on WP. TedFox pretty much explained what I meant. :)

TedFox: Well, the switch was for the better, but I had a hard time getting it much like how it was for my old MT setup. Mostly the commenting system, and the content/links that appear in either in the single post or index page contexts.

Posted by: Cheah Chu Yeow on August 23, 2004 9am

Paper doll icon
Nilesh's Gravatar

I can do Perl string manipulation pretty well, just not CGI

Umm, you don’t need to worry about CGI when writing non-complex MT Plugins. That’s what the whole MT API thing is about.

Posted by: Nilesh on August 23, 2004 10am

Paper doll icon
John's Gravatar

Congrats on the switch :D! I’ve had MT and wordpress and I have to say wordpress is so much easier to customize… MT is good for people who are new to blogging and just need a publishing bit… But wordpress can be completely broken down and rebuilt by anyone with a fair understanding of php. I really look forward to seeing what you can do with it :D.

Posted by: John on August 23, 2004 1pm

Paper doll icon
Doug's Gravatar

Did you happen to consider b2evolution? It’s also based off of the old b2/cafelog, with an emphasis on lots of features rather than simplicity.

Posted by: Doug on August 23, 2004 1pm

Paper doll icon
Ilija Studen's Gravatar

I tried more that one blog script few months ago. After few days I found out that they just don’t fit my needs. “Front side” was always OK, but scripts are almost always in mess. When I tried WP I instantly deleted it… Template engine? Have WP development team ever heard of something like that??? Tip: Smarty is OK one.

So I wrote my own script. What you see on area51 is a51v1. a51v2 is almost finished and has everything that I need (TB, comment moderation and blacklisting, labels, good externals script, pretty good feed generator, mod_rewrite…) And there is template engine. Don’t mix PHP and HTML!

Reason I did all that (almost two months of work when you put it all together) is that I don’t like to be controlled by a script. Also, when I’m forced to you use somebody else’s code that don’t match my coding patterns its far easier to me to rewrite it that to hack it.

I just wanted to say that when tool doesn’t fit your need create one that does. PHP is not that hard to learn…

Sorry for poor English :(

Posted by: Ilija Studen on August 23, 2004 4pm

Paper doll icon
Ben's Thought Crimes's Gravatar

Back to rainy England
After just over a week of 100°F+ temps I landed at London Stansted yesterday afternoon to the joyful sight of greyness and water streaming across my cabin window, to say i’m glad to be back would be a gross mis-judgment…

Posted by: Ben's Thought Crimes on August 24, 2004 11pm

Paper doll icon
CaptSolo's Gravatar

b2evolution could also have been a good choice.

You have already migrated the blog, but this information may be useful to others considering their options.

For current MT users b2evolution supports migration from MovableType

If we look at your “In short, I’m happier because:” list, all the same applies to b2evo. Most probably because it is also an evolution of b2/cafelog and these two (together with WP) are the most active offsprings of b2.

Both have their own advantages.

b2evo supports multiple blogs & users, with fine permission control, has UTF-8 support, i18n (has been localized to many languages) and efficient AntiSpam control. Has clear technical documentation.

One difference that it is not a single index.php file. There are stub files for each blog which you may configure as you wish. Further - nifty appearance modifications can be made inside skin files - so you can separate - configuration params, functionality and look (CSS). Try the on-line demo (backoffice is most interesting to see, i think).

Posted by: CaptSolo on August 26, 2004 5pm

You can subscribe to the RSS feed for comments on this post.

Sorry, this entry is no longer accepting comments. If you have something you really want to say, you can write me.