I’ve finally switched my site to WordPress

WordPress

When I started blogging, all the way back in 2005, I made a slight technological false start and started using Mac OS X Server’s built-in blogging system. That’s what I had, so I thought it a good thing to test.

It wasn’t good.

Plus running my blog off my home computer probably wasn’t the best idea anyway, given 2005’s broadband bandwidth and speed.

I quickly decided to move to a hosted service and to use Movable Type instead. At the time, that was a much better choice, since Movable Type had many technological advantages over its competitors, including its plug-ins, security, minimal use of server resources and built-in caching. WordPress? No thanks.

Changing times

Twelve years later and my choice wasn’t looking so smart. Movable Type had fallen behind, switched between open and closed source a couple of times, and was now largely focused on the Japanese corporate market. Meanwhile, WordPress had become the de facto standard for blogging. It was time to switch.

Migrating my wife’s company’s web site took about an afternoon, it was that easy. Migrating my 10,000-post media blog was far more of an endeavour, requiring custom coding, rewriting of both Movable Type and WordPress import/export plug-ins to deal with custom field types, and considerable performance fine-tuning. I reckon it took about a month, maybe two, to get everything purring along nicely.

This blog and my own web site, however, took a little longer. That’s mainly because I didn’t have the time to do it, rather than because of any intrinsic complexities. However, I finally began the project in earnest a couple of weeks ago and yesterday, I was at last able to deploy the initial release of the new-look site.

It’s still a slight work in progress and I’ve not yet migrated over my entire portfolio of articles from the previous system. Nevertheless, I think it’s pretty much there and looks a lot more modern than the previous version; it’s also far more suitable for mobile browsing than the Movable Type theme, which was created before responsive sites had even been conceived.

Fingers crossed, it’ll also spur me into blogging a bit more often, as I realise it’s now been about three years since I last posted something here!

Switched away from Dataflame at last

The observant among you may have noticed that I’ve changed web host. Goodbye Dataflame, hello LivingDot. Dataflame finally pushed me over the edge by locking down the permissions on my cgi-bin for a week while I was on holiday (without telling me) then locking them down again for two days while they did testing, simply because I was running Movable Type for this blog (and my other blogs).

LivingDot has the virtue of being a preferred partner of Six Apart, the company that makes Movable Type, and while the performance on their servers isn’t as good as Dataflame’s, the server occasionally times out on some requests and they’re a little more expensive, they have several advantages

  • They let you use SSL encryption on email in a way that’s compatible with Microsoft Entourage
  • They let you support a huge number of domains (50 I think) on your server at no extra cost
  • They actually know what Movable Type is and how to support it.
  • Large numbers of MySQL databases to call your own

The only hassles I had with the move was a couple of files that somehow got left behind; and problems getting my old MySQL databases copied over (leaving some strange characters on entries that used £s, “s, …s and Greek script). Otherwise, all is good and happy again.

Which is worse: spam or bouncebacks from spam?

I don’t get much spam, usually. Through a combination of SpamAssassin on my email server and SpamSieve on my Mac, more or less everything stupid ends up deleted before it comes to me or stashed in my Junk folders in my various email programs.

Yesterday, however, some spammer somewhere decided he was going to send out spam emails using my domain name (the-word-is-not-enough.com). The spams aren’t going out from my server – they’re probably emanating from some botnet somewhere – but because there are now so many firewalls, invalid email addresses, authentication systems et al, I’m getting a load of messages as bouncebacks.

And when I say a load, I mean 3,800 in the last 24 hours.

Fortunately, I’m on fast broadband, have unlimited email storage (more or less) and have trained SpamSieve to simply junk the bouncebacks, rather than fill up my email inbox, so it’s not a huge problem. But it does mean that I’m not going to be able to even think about picking up emails remotely with my mobile phone or webmail any more until the spammer gets bored and moves on to another domain.

I could set up a load of rules on the server to filter the messages out, assuming I could find some sensible definitions that won’t stop me from getting any bounceback messages at all from any emails I send out.

But at the moment, I’m cheesed off!

UPDATE: Turns out setting out the rules was relatively simple, thanks to SpamSieve: all I did was check its log to see what things it was picking up on to exclude the bouncebacks, picked the guaranteed indicators of spaminess (a couple of IP addresses in Germany and a certain make of Outlook Express), then set up the corresponding rules on the server. Now, almost everything’s getting deleted before it comes to me. Fingers crossed I haven’t done something stupid that stops all mail inadvertently.

MT-MyBlogLog

I’ve created my first plug-in for Movable Type: MT-MyBlogLog. It allows users to include the MyBlogLog avatars for commenters to their blog without having to include the MyBlogLog widget. It works with both dynamic and static pages. You can get it from my site and there’s more about how I created it over on my technology blog.

Useful fan mail

Isn’t this nice?

Rob,

Your article in the Summer 2007 issue of .Net about Google Co-op was terrific, a real help to me. I was going to write a blog post about my experience getting a custom search engine up and running, and I wanted to link back to your article. But I can’t find a link online. Can you point me to one?

Curiously, though, I hadn’t realised the article had been published for a couple of reasons

  1. I wrote it in November last year
  2. I wrote it for Practical Web Design, not .net!

Still, it’s good that it’s seen the light of day, now that PWD has folded. And it’s good that I know it’s seen the light of day, too! The other missing article I wrote on Movable Type photo galleries has just been published, too, so that’s a double whammy from my informative correspondent. Thanks!

New scripts: Entourage Read Receipt

I’ve created a new package of scripts for Entourage X and Entourage 2004 users: Entourage Read Receipts.

Ever sent an email and wondered if it arrived? In this age of dodgy spam filters and abandoned email addresses, the disappearance of emails is a growing problem. Wouldn’t it be good if there were some way of finding out?

Fortunately, some clever people have already thought of a solution: the “Disposition-Notification-To” (DNT) email header. What does this do? If you add this, invisibly, to your email message, any compliant email program will send you back an email to tell you the message has been received or read.

Note the word “compliant” there. Unfortunately, Entourage X and 2004 – unlike their Windows-based cousin, Outlook – don’t have a facility for easily adding the DNT header to email messages, although you can configure any of your email accounts to add the header to every message you send out; they also ignore requests for “read receipts” in any incoming emails.

This is where this package of scripts comes in. Included is a script for detecting the DNT header in incoming messages and sending back a standards-compliant read receipt that includes both human and machine-readable notifications that you’ve received the message. There are also two scripts for adding the DNT header to your own outgoing messages: one that simply toggles the header on and off for each of your email accounts (if the account already has the DNT header it’s removed, without affecting any other headers you might have; if the account doesn’t yet have the DNT header, it’s added); and one that lets you pick which accounts you want the headers added to.

You can find out more and download the scripts from their home page.

Train timetables on your Palm Pilot

FahrplanTransport for London used to have a nifty Palm OS app that allowed you to download train timetables to your PDA. It was a bit limited: you could only have a single route and a set range of hours, making it a bit useless in practice. No wonder TfL withdrew it.

So I’m delighted to discover [via Digital Lifestyles] Fahrplan, available from Deutsche Bahn. Type in as many routes into the web site as you like, for whatever time periods you want, and the site will produce timetables in Palm and other formats. Download the free viewer and you’re sorted. And yes, it works with UK train stations. Amazing.

Gmail servers as a cure for overzealous anti-spam systems

Ever have the feeling your emails are falling into a black hole? I’ve been getting that since last Friday, when people – in particular editors – have stopped answering my messages. Some, it turned out, were just very busy or away at 3GSM. Others, I’m not so sure about.

My root paranoia stems from my ISP, Be, which has taken the slightly unusual step of blocking all outgoing email traffic unless it goes through its own server. I’ve had to set all my email accounts to send via smtp1.bethere.co.uk and set up various doohickeys to automatically change my mail settings on my laptop whenever I’m out and about.

This wouldn’t be too bad if it weren’t for the fact that Be’s server is slow and it keeps getting blacklisted for sending spam. Of course, it’s always some zombie or other that’s done it, not someone running a spam business, but that doesn’t stop the blacklisting.

Be always does its best (it claims) to get itself unlisted, but with companies using various anti-spam systems and updating them at ‘interesting’ intervals on occasion, that still means that Be’s being blacklisted by random organisations at random times.

So after a week of silence and chasing, I decided enough was enough and reconfigured my Google Mail account to accept emails sent from work and home accounts. Google Mail uses a different port for its SMTP servers, one that Be doesn’t block. It’s also unlikely to end up in anyone’s blacklist and it uses all the lovely domain authentication systems you’d expect of a giant like Google. You still need to authenticate using your Google Mail details and if you don’t let the system know about your other email accounts, it’ll change the “From” header so it uses your Google Mail account’s address. But once you’ve done that, you’re ready to use it as if it were your own server.

Tried resending a few messages that I’d had no reply to. Got answers within two minutes.

Bloody Be. And more precisely, blood spam mailers, ruining it for the rest of us.

Skyped up

I’m all Skyped up. I’ve a SkypeIn number so that people can call me wherever I am and SkypeOut, which gives me free calls to UK landlines for six months in addition to the standard cheap Skype calls. I’ve a Cyberphone W for Mac so that I don’t have to shout at my computer, wear a headset or suffer rubbish Belkin WiFi handsets. I’ve also installed Call Recorder, so that I can record interviews easily.

It’s all working out quite nicely, although I had a few problems when I started. Call Recorder didn’t work with the current version of the Skype beta; and the Cyberphone shipped with a PowerPC only app – I had to get a Universal binary version from them and a couple of buttons on the phone still don’t work. The Cyberphone audio quality isn’t that brilliant either, although it seems to be getting better. I’m also having trouble getting into conference calls that need a PIN entered.

But it’s all quite nice and useful. I particularly like the call forwarding feature and ability to embed your Skype status in a web page, so that people know whether you’re available or not to speak to them, directly from your contact page. Isn’t technology wonderful?