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.

Looking for hosting

I’m on the hunt for a good webhosting package. I’m having some problems (technical and political) with the current one on the dedicated server I’m sharing. If any of you have any recommendations, do let me know by leaving a comment or writing me.

These are my requirements:
500MB storage
25GB transfer (at least)
Unlimited databases
Unlimited subdomains
Unlimited email accounts
Multiple domains (on a single hosting plan)

I’m thinking of getting a Virtual Private Server (VPS) solution and have been taking a look at some User Mode Linux (UML) hosting plans. In particular, Dinix and VPS Colo (I’m looking at their lowest priced plans) stand out after much searching and reading over at WebHostingTalk forums. $35/month isn’t something I can afford though. If anyone wants to share the plan with me (we can split it 50-50 or whatever), do let me know. I’m a very nice trustworthy guy (honest!).

UML == root access. Mmmm… I can finally get the stuff (Subversion, PostgreSQL, mod_python) I want installed.

The Official Gmail Notifier

At first there was the Gmail Notifier extension for Firefox. And there was the GMailCompose extension for Firefox (made defunct by the WebMailCompose extension). The first displayed an email notification message in Firefox. The second allowed you to have all mailto: links you click automatically send you to a page to compose the email in Gmail. There was also GTray.

And then there now is the official Gmail Notifier from Google. Purely for Windows, it appears unobtrusively in your system tray when installed.

New message notifications appear as a transclucent pane in the bottom right of your screen. (The icon does look a little cutesy doesn’t it?)

gmail-notifier-new-msgs-notification.png


There’s not much more you can do with it.

gmail-notifier-menu.png


It’s nice to have an official tool from Google that does what all those other homegrown tools do. It’s also interesting that Google seems to have incorporated the best of all these amazing tools in their app - mail notification and mailto: link manipulation. Thumbs up to the authors of those neat little tools! Google seems to be copying your ideas!

McSearchPreview - a better GooglePreview?

In response to Martey’s comment and my entry (I think), Carlo has updated the McSearchPreview webpage to include an explanation of the Amazon affiliate codes mentioned below.

When you use McSearchPreview and click on an Amazon result, you support me and the further development of the extension if you actually purchase a product.

Support extension authors!

Carlo Zottmann wrote me about 2 weeks back to let me know about his McSearchPreview extension for Firefox. He wrote his first Firefox extension after using the GooglePreview extension (which I wrote about) and discovering that it lacked similar capabilities for other search engines that he uses. Attending a need is indeed excellent inspiration.

McSearchPreview adds preview thumbnails to search results for Google, MSN Search, Yahoo Search, A9 and AllTheWeb. Unlike GooglePreview, the thumbnails are retrieved from Alexa (by default - Thumbshots can also be used as an alternative). This means a larger number of results will have preview images, since Thumbshots only has thumbnail images of pages that are in DMOZ (in which very few pages would be listed).

Screenshot of McSearchPreview options dialog


McSearchPreview also adds an “Open in new window link” at the end of each search result - the actual usefulness of this feature is a little arguable since we are using a browser with tab browsing, after all. It also adds a “Site Info” link that takes you to the Alexa page for the search result’s domain. It seems like an Amazon affiliate link but I’m not exactly sure if the author gets any benefit from it. Well, I’m fine with letting Carlo make a little profit from his neat extension, if any, but it would have been nice if he’d explained why there’s (what appears to be) Amazon affiliate code in the “Site Info” links. Incidentally, the author of GooglePreview has removed Amazon affiliate code from version 0.3 of the extension.

Anyway, this is a really nice extension and I’m using it in place of GooglePreview at the moment (more pretty thumbnails!). Thanks Carlo!

pickle.dump(links, blog) // Non-techie edition