Blog “Reboot”

Hello – here’s the refreshed blog. I’ve decided to revert to a more typical blog format, after many months of soul searching on the issue. I previously had a layout based on a framework we used at interconnect/it for a couple of clients

But not only have I opted to switch to a blog layout, I’ve decided to use an off-the-shelf theme.  I’m now using Khoi Vinh‘s Basic Maths WordPress theme.

Why?

Well, it’s a lovely theme, for starters.  The typography is pretty good.  The archives page is brilliant (check it out) and should be the standard bearer for all themes archive pages.

But the real question for many, I suspect, is why I’m not using an interconnect/it designed theme.  Well, for starters, interconnect/it hasn’t produced an off-the-shelf theme in years.  It’s just not our business.  So rather than use a product of ours, we’d have to spend good and valuable time on creating a new theme.  And, well, why would we want to do that?

Lots of reasons, actually.  I could have a theme coded at the office that really shows off what we can do.  But the problem with that is that there’s not much need.  My blog is not an important one.  It isn’t about WordPress (most WP related content will be on our company site, not my personal one) and it just doesn’t get much traffic.

I run a business.  Its purpose is to make money, employ five people, and, with a bit of luck, turn a reasonable profit.  Its job is not to service my ego or make me look good.  A really good theme costs the equivalent of around £10k-£20k of chargeable time to design, code, test and implement.

Given that we’re turning work away, I thought “why bother?”  And decided to go shopping for something.

So What’s It Like?

It’s actually quite weird using somebody else’s theme.  I actually tried a few out and here are the things I learned that will hold us in good stead.

Themes don’t do enough to make life easy.

No really, they don’t.  One of interconnect/it’s biggest challenges is making sure that WP is as easy to use for clients as possible.  This means following standards, but it also means using some little tricks that help out – for example, registering and setting plenty of different image sizes, and setting/over-ruling whatever the media settings say.

Migrating WP content really sucks.

There’s a fundamental flaw with the default WP export/import.  If you have inline images, although the importer has the ability to download and attach the image in your new site it won’t change the links.  And if you do a search and replace, and your image sizes have changes, your lost.  Totally – the img tag will point to a file that doesn’t exist.

So what do you do?  Well, usually if I’m moving a site from one server to another, even switching domains, it’s a non-issue.  I have my tools.  But if you’re starting from fresh and working like an end-user would then you have to go through every single damn post in order to fix the images.  Every post with an image in it.  That’ll take a while.

If you’re really geeky, you’ll sort it, but it takes time.  Way too much time.  This kind of stuff needs to be sorted and it’s something we may look into as a contribution to the WP project.

Some Plugins Leave Lots of Crud

The reason for a reboot was that I felt that my site’s DB had been filled up with all sorts of crud.  Lots of plugins create tables, leave options, and so on.  Surplus tables have little impact, but they clutter the place up.  But options, lots and lots of them, do have a minor performance hit, and they add up.

Other plugins leave hooks, don’t deactivate properly and so on.  And over the years, I’d been through an awful lot of plugins.  The site hadn’t been redone since WP 2.0 had been set up on it.  I felt it was getting sluggish.

So… there are beautiful and amazing themes out there, and WP is wonderful, but there are little things that could make life just that bit better.  Better migration tools, a better system of managing images within content and their migration, and a better system for activating themes so that image sizes are better handled.

Is it a lot to ask?  Well, we’ll see what we can do about that!

Border Crossings and Empty Airports

I’m sitting in the emptiest airport I’ve ever experienced. I suspect they only operate a couple of flights a day from Tacna.  Consequently my only company appears to be a bored check-in attendant for a different airline and a barman who’s mopping the floor.

And I’ve finished all my books. I have little else to do except get the phone out, take advantage of the free Wi-Fi in Peruvian airports and get blogging.

So, let me tell you about how to get from Arica in Chile to Tacna in Peru.

The two cities are only some 40km apart, but transport between them isn’t what you might expect.

The simplest way is to get your hotel to order a taxi to your destination on the other side. They will deal with the crossing, but from Chile this can be expensive, running at around £35.  Similarly, in the opposite direction it’s perfectly possible to get ripped off, as I did last week when I arrived here.

You need two things…your passport and some local currency. In Arica you can take a taxi for £2 to the “Terminal Internacional” where you’ll expect buses but will actually see a huge number of USAnian cars.  You find a driver going to the border pay the station fee (200 pesos, 40p) and then go to an office to do some paperwork.  You then get shown to your collectivo.

These are always US cars of various vintage. I got a really seventies Crown Victoria driven by a brassy old lady whose hair waved in the wind out of the window.  The car contained 5 passengers…a handy one extra than a European or Eastern equivalent, hence more profit.  For her troubles you pay just 2000 pesos, about £3.

She took us to the border, made sure we were OK and left.  There, waiting, were other collectivos heading to Tacna. They all pass the airport, so no problem. You go through Chilean customs and then get driven the short distance to Peruvian customs, again in a USAnian car, albeit this time I got a more modern but nondescript GM thingy.  Cost here was 2500 pesos (they take Chilean money cheerfully.)

That’s it. For less than a tenner you can cross the border.  Don’t do like I did the other way last time and get ripped off by a driver taking you to the airport…you should spend more than about £5 to reach the border from the airport even by taxi as it isn’t far.  Ask first for the price.  Also check whether it’s all the way to Arica, or just to the border (say ‘aduana.’)

Lima, again.

A smidge under five years ago I created my first blog post as I started preparations for travel to South America.  Today I’m preparing to travel to more or less the same destinations…but for sadder reasons.

Two weeks ago my father died. A week ago a police officer knocked on my door to tell me the news that the man I hadn’t seen in twenty three years died in Arica, Chile.

So that’s that… I will travel to South America in a few weeks in order to carry out a funeral and try and piece together my father’s life story.  Tonight I booked the flights.

More soon….

WordPress Performance, Make it 3x Quicker!

I’d started to notice that my site could often be slow to load – other sites on the same server weren’t suffering the same way, so I wanted to document a simple way in which one can identify performance issues on the site. This is one of them.

A little while ago I reported that my site, since some WordPress upgrades, had started to slow down. I’d wondered whether it was WP becoming increasingly bloated, or some other problem.

Well, it took me a while to get back to the issue (babies and a booming business don’t help!) it’s continued to get worse and worse, until a recent change has improved things… but only marginally, as shown by the Pingdom chart below:

Not looking good…

This is dreadful, really – daily average of 4,000ms responses just aren’t acceptable where, two years ago, I was getting 800ms.

So, now the process starts.  The recent small improvement came after installing our Spectacu.la Advanced Search Plugin, which runs a regular database optimisation to help keep things nippy, but it was still dreadful.

Is it Pluginitis?

My first suspicion is always that of plugins (and sometimes themes, if they’re complex).  In our office we have a term called ‘pluginitis’ which refers to the problem of a site having too many plugins installed, many of which are poorly written.  I hate to say it, but when clients call to ask for a plugin to be installed that we’ve never tested we go through it and, 90% of the time, discover serious performance or security flaws that will cause long-term issues.

And this site here is old – I’ve been running a WP install for four and a half years with nothing more than upgrades and, like an old PC that’s been upgraded too many times, that causes issues with old drivers and code.  Same can apply to WordPress.  So let’s see what we can do to improve things.

First stage is to disable as many plugins as possible so as to isolate the issue.  I’m using a division based approach – ie, I’m going to disable half of my plugins to see what happens.  If I get full performance back, then the problem lies in that half.  I can then reactivate half the plugins and see what happens.  If the performance is still good, the problem is in the other half.  I think you can see where I’m going here.

I’m also going to go for plugins that aren’t written by us. Not because I’m biased (ok, maybe a little) but because I know all of ours are carefully tested for performance – many are run on major sites such as the Telegraphs blogs site.  Speed is of the essence.

I’m also going to skip plugins like Akismet, because anything that’s essentially ‘core’ is usually going to be reasonably performant – at least on a small site like this one.

It’s worth noting that I could easily delve into SQL statements and code efficiency – but that’s only interesting to developers – if you’re simply a WordPress user, performance is interesting but what you can do to find problems is somewhat more limiting.

Plugins being disabled:

Add to feed – a simple plugin, but sometimes simple plugins miss simple tricks.

Headspace2 – I have my suspicions about this plugin as it’s massive. Could be fine, may not be.  Only way definite way to know – measure it.

Search Meter – a nice plugin to see what people are searching for, but is it adding load somewhere?

Social Bookmarks – it shouldn’t cause issues, but you can never be sure.

wp-typography – I love what it does for the typography on the site, but it’s also running a lot of javascript.

First results:

I do use YSlow to test the site, but one of the problems is that it’s hard to get a large enough series of data to be statistically relevant.  It’s good for seeing the extra load (and why I knew the amount of javascript was an issue) but for longer term analysis it’s flawed.

So, we go back to Pingdom and look at the one day chart.  As I type this it’s now an hour since disabling the plugins above – so let’s see what’s happened:

A dramatic improvement!

As you can see, in this afternoon alone there’s been a dramatic improvement – from around 2500ms per visit to 1230ms per visit.  In one single step I’ve halved the load time of the page.

What we don’t know so far is whether that’s because the page got smaller to load or whether it’s down to a reduction in database load – but that’s really for another article.  What this is all about is trying to document how I’m improving the responsiveness of the site in a way which relatively non-technical folk can follow.

What I’ll do in the next feature is to turn off some more plugins to measure the impact they had.  I’ll also be interested to see if the spikeyness of the response times has varied much – are they caused by simple server load, or is there something else at play?

I will then start to switch plugins on again in a structured way in order to measure which was causing the heaviest loads on the site.

Keep watching!

Photoblog is No More!

Sometimes… you just have to tidy up, and finally I got around to dumping the old photoblog section of the site and integrating it in here.

I’ve removed the old photoblog now that I’ve gone over to a wider format for this theme – I previously set up the photoblog because I wanted to be able to have large images easily viewable by visitors.  However, I wasn’t really keep the site up to date this year due to time commitments.

How I looked a few years back... and yes, I'd found the hair dye.
How I looked a few years back… and yes, I’d found the hair dye.

In other words, it was just an extra ‘thing’ that was floating around.  I have enough of those, and it’s become time to have a tidy up.

The content’s still here, and I may even create a new category/section called photoblog which will be used for the same purpose.  Or then again, I may not :-)

Krakow – June 2009

I was in Krakow recently – ostensibly for a weekend jolly, but it turned out there was a surprise birthday party organised for me! Here’s some pictures from around the city…

I was in Krakow recently – ostensibly for a weekend jolly, but it turned out there was a surprise birthday party organised for me!  However, I’ve made a conscious decision not to expose my personal life on my blog, so those pictures will be password protected and saved for friends and family only.

But everyone can see some of my favourite shots of Krakow from this particular visit.  Lovely city, lovely people, lovely beer!

Wordcamp UK 2009 to Liverpool?

pdf

Well, we’re going to try!  WordCamp is a small, informal conference all about WordPress and its people.

Wordcamp UK 2008 was held in Birmingham last year.  The current list of nominated venues are in Liverpool, Cardiff and London.  Read the pdf attached below, and see what you think.  Feedback would be great, but if you really want the WordCamp to take place in Liverpool on the 18th and 19th of July you’ll need to pipe up on the official mailing lists.  More info at Tony Scott’s blog.

St. George's Hall, Liverpool - not the likely venue. Pic by Me.
St. George's Hall, Liverpool - not the likely venue. Pic by Me.

Hello

Hi there – well, where do I start?

Let’s just say this isn’t intended to be a daily blog or journal of my life. I really really don’t think that what I do is quite that interesting. If I start posting up anything that says “Not done much today, had a drink with Roger and quite liked a girl we met but not sure if she’ll meet me again…” then please, shoot me.

Instead I’m going to add stuff on topics that might be of interest. Current things will be:

Motorsport – events I’ve competed in, work I’ve carried out, and what I’m doing. This is as much to share information with other people who are interested in the sport.
Work notes – anything I do in my work (currently a ‘resting’ PeopleSoft consultant) may be noted if I think it’s of interest either to myself in the future or to other PeopleSoft types. Other projects I’m working on may also be documented here. Not because it’s the best way, but it is the easiest way!
Travel journals – the main reason I’ve set this up. Now I can easily post up news and information about my travels from web cafés around the world. And no need to arrange paper stuff – something I’m terrible at.

Thank you for looking!