Site relaunch – still with WordPress

I fell out of ‘love’ with blogging for a long time (though love seems an inappropriate term for writing stuff on a website!) and intentions to relaunch this site properly have been on the back-burner for too long. The process of starting to write again was – predictably – hampered by the traditional procrastination over blog platform (which one to use, or whether to write one myself, etc.) and over hosting changes that might or might not be required as a result. This post is a brief explanation – for what it’s worth – of why I think WordPress is still the best option for a blog.

Platform

The reality of having to devote most of my time to academic work (summer project!) meant that the ‘to self-code or not’ question was answered in the negative. If I had more free time (and wasn’t spending most of my work time writing code at the moment!) I might have been more inclined to code a blog platform myself (most likely in django), but deprived of such time the obvious best option was to use someone else’s proven, feature-complete code to do all the lifting for me and just concentrate on writing blog posts again. Duplicating stuff that’s already been done elsewhere just doesn’t make sense.

The key question for a blogger in 2014 is whether to use WordPress (the established, ’800-lb gorilla’ of the blogging and CMS world) or the up-and-coming Ghost (lightweight, node.js-based, shiny). I’ve perhaps got a slight attachment to WordPress, in that (barring brief experiments with Movable Type and then Textpattern) this site has been WordPress-based for as long as it’s been a blog. My best estimate, looking back at my email archives, is that I started using it at WordPress 1.5 – I certainly remember WordPress 2.0 being a big event (with a theme change added in).

There are lots of objections to WordPress, but most of them centre around its performance impact and on the complexity of its admin interface – it’s certainly weird to have WordPress talked about in those terms when I first encountered it as the upstart free-licensed blogging system challenging the dominance of (the then-paid and proprietary) Movable Type. The admin interface doesn’t bother me – I use the bits that are relevant to me and ignore the bits that aren’t, but I can see how it could be intimidating for non-techies (the perennial problem of FOSS: being primarily built by geeks, free software has a tendency towards geek-friendly rather than user-friendly UIs!). WordPress does have an advantage though, in that it can run on shared hosting (more on that below).

Ghost is the new kid on the block – node.js based, AJAX to its core, and with development funded by a Kickstarter appeal last year. Its admin interface is a thing of beauty, and its Markdown-based post editing is refreshingly lightweight (though not without its limitations). The problem with Ghost though is that it is missing so many basic features. The clue to that is of course in the version number (0.4.2 at the time of writing), but the project roadmap suggests that a number of design philosophies were just not what I was looking for. A key point to that is comments: the Ghost project does not support them and never will. Third-party plugin authors will be able to supply a comments system, but only when the plugin API is released (current estimate Q3 2014).

The current alternative – which really seems like the preferred option of the Ghost developers – is to use a third-party comments service like Disqus. Now there are arguments for and against blog comments (I’m going to deal with that in a separate post, which I’ll link to when it’s done), but I think any CMS which attempts to be a blogging platform really should give authors the option of enabling comments without resorting to third-party services. Without any degree of interactivity in blog posts, there really isn’t anything you can currently do in a default install of Ghost that you couldn’t do with static HTML/CSS (or perhaps with something like Jekyll to preserve your sanity). ‘Copy-paste an iframe-based widget from some cloud service’ should never be the answer for core functionality, particularly when such an emphasis has been placed on responsive and fast-loading pages.

There is no denying that Ghost is faster than WordPress, but while it would be unreasonable (in fact downright obtuse) to expect Ghost to match WordPress for features (since it is explicitly aimed at being a modern ‘back to blogging’ lightweight system), if your site can run with ‘just post editing’ then why not do that with static pages which will run on any hosting and are faster than any CMS?

There’s no denying the aesthetic beauty of Ghost though. I’ve borrowed a small portion of that beauty through Lacy Morrow’s WordPress port of Ghost’s default theme.Update: For various cosmetic reasons I’m not using ghost-wp after all. I’m now using a child theme (a snazzy non-destructive way of modifying WordPress themes) of the default Twenty Fourteen theme. I’ll likely be tweaking a few bits of the theme over the next few days – so if you come to the site and something looks odd then drop me a line in the comments!

Hosting

As mentioned above, an advantage of WordPress is that (since it runs on PHP/MySQL) it will happily run on just about any shared hosting service. This shouldn’t really determine your choice of blogging platform – the cost of moving to something like a DigitalOcean instance isn’t that great – but it is a fringe benefit of using WordPress if/when one decides in its favour on other grounds. Running on something like a DO droplet also requires that you handle OS updates, firewall rules, and so on yourself: the time and hassle to do all that (and to replace the stuff that shared hosting includes, like email accounts/forwarding), and to make sure it doesn’t negatively impact the performance of the server, is a significant constraint in itself.

I’ve been with NSDesign for more than a decade, and the hosting is great. Yes, it’s shared hosting: it has the same limitations in terms of control and customisation as every other shared hosting service, but for any given level of hosting the key differentiator is really customer service. On that score I can’t fault them: I get answers to support tickets quickly (though admittedly I haven’t had much reason to use tech support since their Broadband Cloud Solutions joint venture) and from a human being rather than an auto-responder. While there are the usual limitations on storage/bandwidth I see no reason to switch to another host unless this site becomes popular enough to make the latter an active rather than a theoretical limitation (and I’m not holding my breath for such a deluge!)