John's Adventures

Archive for the ‘WordPress’ Category

WordPress Reaches 2.7 And Open Source Software

My move from Movable Type to WordPress (the software that powers this site, barring the forum) just over a year ago has turned out to be a great choice with hindsight. At the time I liked the look and extensibility options of WordPress and the fact that a vibrant community had built up around it so I switched and I’ve never looked back.

Ever since then I’ve become a bit of a WordPress evangelist to friends and have used it to build a few sites and encouraged other people I know to do the same. I like to keep an eye on the next version as it’s being developed and have a local copy on my computer that I play with. Early through the 2.7 development process it became clear to me that 2.7 was going to be very good. Things like threaded comments, paged comments, sticky posts, auto-updates, bulk editing and above all the revamped administration interface so impressed me that I started using the bleeding edge builds on this site. I’ve been working in the software industry a long time and have learned to steer clear of beta builds of applications I depend upon (particularly Microsoft ones I have to say) – I’ve been burned too many times to count. But with WordPress I felt differently, and it’s all about the people who work on it and the way it’s developed.

The New-Look WordPress 2.7 Dashboard

Coming from a corporate development background as I do I’d always assumed that popular open source projects would mean a lot of people pulling in different directions and therefore require a lot of management overhead to filter out the noise and move the product onwards. I assumed that outside of the more rigid “need to make money out of this” corporate environment open source projects would tend to bumble along rather than stride along. But watching the WordPress development process has shown me that I was quite wrong and pretty much the opposite is true.

The more people who use a particular piece of software the more they’ll want it to do this little thing that nobody else would use but they absolutely want and will moan and complain if it doesn’t (I get plenty of that with John’s Background Switcher and that’s nowhere near as popular as something like WordPress). Or you get passionate people who love the product but want to pull it in different directions and won’t back down. A handful of these people can result in a lot of bickering and momentum slows. In the corporate world you’re either a slave to these people and have to create some Frankenstein’s monster of a product to please everybody (making compromises) along the way or they can be ignored completely which is easier as the development process isn’t publicly visible like an open source project is.

What I like about WordPress is that there are a bunch of talented people, passionate about what they do working on it. Matt steers the ship and can have the final say on something that needs the final say, anybody can contribute their suggestions, ideas, bug fixes and so forth and rather than having battles as to what direction WordPress goes in, there’s always the option of “if you don’t like it, fork it and go your own way”. This was how WordPress itself started, as a fork of b2. If someone comes up with a great idea that improves WordPress then there’s every chance it’ll make it into the product. Since the type of person who contributes to the development of WordPress will be passionate and care about the product, they want to make it better for everybody. And as the development process is open to all, there’s no excuse to not be connected to its evolution.

So where was I before I went off on a tangent? Oh yes, installing the bleeding edge version of WordPress 2.7 here. I could watch the development of 2.7 unfold in front of my eyes and if I found something wrong I could raise a bug report or even submit a fix (as could anybody else) and knowing the quality, dedication and passion of the people working on it and seeing how great it was going to be, I wanted to start using it as soon as I could. And you know what? WordPress 2.7 is even better than I thought it would be!

WordPress99% of the people who use WordPress no doubt have little interest in its development (quite rightly, being users rather than developers) and the first they know about a new version is either when it’s released or when they read posts prior to release discussing new functionality. Some may moan and complain about releases being too frequent or changes that they didn’t think were necessary (like another redesign less than a year after the last one), but when you see the amount of work, care and thought that goes into each release and the reasoning behind all the decisions (such as the latest redesign making it a platform to take WordPress far further than was possible before), it’s clear to me that they’re doing the right thing and WordPress is in good hands. And if you don’t like it, you can always fork it and take it in your own direction. But I wouldn’t recommend it as you’ll find out just how hard it is to create successful software that people will love. Software like WordPress.

Anyway, if you’ve never used WordPress, go and take a look and if you’re already a user, read all about the new version here. Quite simply, it rocks! Oh yes, and open source isn’t bad either! ;)

Creating Photo Gallery Overviews in WordPress

One of the cool things recently introduced in WordPress (version 2.5 if memory serves me correctly) is built-in photo galleries. I’d wanted to host my own photo galleries locally for ages instead of relying on a 3rd party like Flickr and once again WordPress came up with the goods in the nick of time (I was getting close to rolling my own which wouldn’t have been ideal).

You may have noticed that when I upload a photo album here on John’s Adventures you don’t see all the photos on the home or archive page, you see a single photo from the album, a description and a link to view the full album. Pretty much like this:

A Photo Gallery Overview

While WordPress doesn’t currently support this functionality out of the box, it’s actually pretty straightforward to implement in your own theme by following these steps…

Read the rest of this entry »

A Shiny New Site Design

I cobbled together the design for this site a few years ago and had been gradually tweaking it, changing the banner graphics, the colour scheme and such things ever since. When I switched to WordPress last year I promised myself that when I had a bit of time I’d sit down and create a new design that was more personal to me. That time never materialised so I finally just sat down and did it anyway! If you’re reading this in an RSS reader you might want to visit my site and see it for yourself. Here’s the before and after picture:

The old vs. new site design

I’m no graphic designer by any stretch of the imagination but I thought that rather than pay someone else to do it or use a standard template I’d give it a go myself to see what I could come up with.

One of the first things I wanted to do was widen the main content area of the pages so I could insert bigger photos (which is particularly useful as I’m retrospectively importing all my old photos into the site – more about that another time).

Taking the design of sites like Matt’s and the Web Designer Wall as my inspiration I decided to go down the image-heavy, non-minimalist, non-corporate route (it is the era of broadband after all). At one point I toyed with the idea of a minimalist design like Mark Pilgrim’s but in the end my ego got the better of me and I decided to try to put as many elements of my life in as possible. So here’s an explanation of what I came up with from top to bottom:

  • The background picture is this photo of Goatfell which I took on holiday on the Isle Of Arran last year. It is of course in my home country of Scotland!
  • The photos at the top are some of my favourites I’ve taken around Yorkshire – the place I’ve lived for the last 9 years (I can’t believe it’s that long) and a wedding photo is hidden in there too (you can just see my right shoe).
  • My keyring goes everywhere I do and frankly I’ve never had a better one. 1GB of USB storage, scissors, knife, screwdriver, torch and pen built in? Swiss perfection! Or maybe I’m just a geek…
  • Anybody who’s ever worked with me might notice that I never use a notepad – instead I just use bits of paper (invariably torn paper) to scribble on, which is why the design features plenty of torn paper.
  • I have a thing about highlighter pens. Whenever I start a new job one of the first things I do is seek out a nice highlighter which I’ll use probably once the whole time I’m there! Hence the hover-over highlighting in the menu bar and the headings on the sidebar (yes, I really did draw a line with a highlighter pen and scan it in, I couldn’t think of a better way).
  • Since my eyes aren’t what they used to be I get tired staring at black text on white all the time, so I’ve gone with textured paper for the main background – although I’ve stuck with white on my discussion forum for old time’s sake.
  • I’m obsessed with coffee so that’s a picture of a cup of Jamaican Blue Mountain I was drinking yesterday at the bottom of the page – it was delicious!
  • Finally, my good lady always complains that I never dust the house. She’s often written my name in dust and I swear I never see it (and conclude that dust is invisible to me). So for her I’ve gone with that grainy, grungy, dusty look, although it looks fine to me!

There are a few other tweaks throughout the site that I won’t go into but I must admit I’m really pleased with the result. Rather than having a plan I just fired up Photoshop and started working away, trying different things to see what worked with this being the eventual result. It took about 5 evenings from start to finish. Hopefully I’ve produced something original and unique that’s specifically tailored to me. And I did it all without resorting to putting a picture of me in it – yes! :)

Snippets And Photo Albums In WordPress 2.5

Since I made the switch from blogging platform Movable Type to WordPress last year I’ve never looked back. Not only is it easier to customise the theme, easier to extend the platform itself in any way you can imagine and has an enormous user and developer community, but every version just gets better and better. The most recent release – 2.5 – comes with a completely redesigned administration section among a host of other cool things. Since everybody hates change (we all get used to doing something in a certain way and learning to do things differently is painful) there were quite a lot of negative comments about the redesign initially, but these have quickly quietened down – and I have no doubt it’s as a result of the user experience being a hell of a lot better. It’s amazing how a piece of software can make you feel more creative but that’s exactly how I feel when I log into my installation of WordPress.

Anyway, I thought I’d take a moment to explain a couple of changes I’ve made to the layout of this site and how easy they were to implement in WordPress. Firstly, snippets. You may notice some posts that instead of having a big banner with the title, the date underneath, the post itself and a link to the comments at the bottom, they have a blue bar to the left, no big banner and… Well, in short they look like this:

I'm just a screenshot, you can't click on me!

I felt the weight of expectation of my site’s design bear down on me every time I wanted to post something. If all I wanted to do was put up a link to something interesting I could hardly justify writing a full article about it and a one-sentence post just looked wrong. So I wouldn’t post. I saw that Matt (that’s Mr. WordPress to you) creates mini-posts when he wants to say something briefly so I pretty much copied his layout (I hope he doesn’t mind)! What is it Picasso said? Good artists copy, great artists steal…

Next, I’ve wanted to post more of my photos to this site rather than over on Flickr but have never had a really neat way to do it. I had on my to-do list “investigate or write a photo gallery app” for ages. Well, fortunately WordPress 2.5 supports image galleries and I could finally get my wish! Out of the box the image galleries don’t do much but since WordPress is endlessly extensible it didn’t take me long to display a gallery as a single image with a description and link that takes you to the actual photos:

I'm just a screenshot, you can't click on me!

Each photo is a post in its own right so can have a description, has links to the previous and next pictures and can accept comments. It’s simple, effective and all I really wanted out of a photo app. Since WordPress reads the EXIF information of all the photos I upload (that’s all the data your camera sets in the picture file like the shutter speed, date, time, etc.) then in time I can change my design to show more details about them as well as other related photos. In fact with only a few tweaks to my templates I could pretty much replicate your average Flickr photo page. Not that I will mind, I want to keep it simple and not spend all night every night redesigning my site!

Anyway, with WordPress I was able to make these changes quite easily and only required a few lines of code added to my template. And the really cool thing is that whereas in my old Movable Type days (note that I used MT3 and MT4 is now available so my knowledge is out of date somewhat) if I had an idea for a way to change my site I’d likely give up as it would require a lot of investigation and work to get it implemented, but it feels like with WordPress I can turn an idea into reality in less time than it took to write this article. Which in the case of snippets and photo albums is absolutely true.

Another Satisfied WordPress User

Well no sooner had I written that I was pondering switching blogging platforms from Movable Type to WordPress than I started actually doing it. One of my many character flaws is that once I get an idea in my head I tend to go 100% all guns blazing and don’t stop until I’ve done it and this was no exception.

Having been a Movable Type user for several years I’d not paid a lot of attention to WordPress other than installing it and having a quick look at it a couple of times. Version 2.3 was coincidentally released just at the time I was thinking of moving my site so I took it as a sign to proceed.

I must say, I’m very very impressed with WordPress. Writing good software that’s easy to use, powerful and fun is very difficult. There aren’t that many people out there that can really do it. But writing good software that’s easy to use, powerful, fun and easy to extend is much harder. WordPress manages to do this very well, better than any software that I can think of. While I know PHP quite well, I hadn’t used Worpress at all yet within 4 evenings I’d managed to do the following:

  • Import all my posts and comments from Movable Type
  • Create a theme that looked exactly the same as the old site but used the new functionality that WordPress offers (such as improved comment handling)
  • Write a plug-in that changes the WordPress WYSIWYG editor to be just the way I like it and tweak the RSS feed to be just the way I like it
  • Migrate the ‘My Software‘ section of this site over to WordPress Pages – a much better way to handle things

To an experienced user of WordPress this is all pretty straightforward stuff, but I’m not an experienced WordPress user. Up until a couple of weeks ago I’d never so much as looked at the documentation or actually written a post with it. Now I’ve moved my site to a different platform, haven’t broken any links and it all seemed far too easy – which I like!

Wordpress on John’s Adventures

My point is that to do what I’ve achieved as a novice MT user moving from WordPress to MT would have been a far more serious undertaking (note that I’m talking about Movable Type 3.x here, I can’t comment on MT4 as I wasn’t impressed enough with it to see what’s changed under the hood). I’d have been able to import my content no problems but creating a theme is a lot harder in MT – they’re stored within the database whereas the theme files in WordPress are files in a folder making them easy to copy onto a test server where I can get things right then simply copy to my live site. With MT I’d have to do a lot of copying and pasting or database updates – not ideal. I’d probably have ended up just using the default template and tweaking that rather than using my existing lovingly created and evolved layout. Of course, some might argue that’s a good thing…

The documentation for WordPress is also worth a mention – whether you’re modifying themes, writing plugins or just trying to figure out how it all works. It can be a bit tricky to find what you’re looking for in the MT documentation (or maybe it’s just me) but the WordPress docs rock. Whenever I was stuck trying to figure something out when creating my theme or plugin the solution was easy to find and explained thoroughly. Feature-wise I think WordPress and Movable Type 4 are pretty much on the same level but I find WordPress to be faster (on my server at least) and with a far more active community in terms of themes and plugins – which is always a good sign for a product. In fact there are so many plugins out there it makes my head spin!

I know they say “a change is as good as a rest” but it’s more than that. I actually feel more inspired since installing WordPress. I can’t put my finger on why but when I log in and look at the clean, slick interface I just want to write something. Which is great news for me – but bad news for you, the poor reader. So I’ll apologise in advance and you can just blame the developers of WordPress – it’s their fault for doing such a damn fine job! :)

Stick With Movable Type Or Twist To WordPress?

I’ve been using Movable Type as the power (with a capital ‘P’) behind this site for the last few years and I’ve been pretty happy on the whole. One thing that was missing was a decent WYSIWYG editor (so that when I write a post I can see how it’ll look when it gets published) – but I sorted that one out by using TinyMCE. Another was comment spam but I fixed that with CAPTCHA. Everything was great, it was working happily and despite the fact that I really liked the look of WordPress (more about that later), I was happy to stay put.

Then recently Movable Type 4 was released. I installed a beta version to have a play around and I really liked it. It’s organised similarly to WordPress (which is much nicer to work with than Movable Type 3) and it seemed very slick. That is, until I tried editing a post. Six Apart have implemented their own WYSIWYG editor and, to be frank, it’s nowhere near good enough. I never find myself switching to the plain HTML view to fix something TinyMCE has messed up and it was only when testing MT4′s rich editor that I realised just how good TinyMCE is. MT4 produces some real garbage HTML underneath, doesn’t let you edit the properties of images you’ve placed such as the CSS class or style you’d like to apply to it (unless you switch to HTML view), doesn’t support tables (except with HTML view) and when creating a new post it doesn’t even surround the text with paragraph markers (unless you switch to HTML view) and you end up having lots of line breaks entered instead of paragraphs. These things may seem minor (and there are many more) but they’re annoying enough for me to not upgrade my installation. It’s the 21st century, I shouldn’t have to be hand-coding HTML to produce a basic, standard blog post about my hair or new football boots.

I have attempted to write a plug-in to get TinyMCE working with MT4 but haven’t managed it thus far – the entry editing page is quite different to the MT3 one and is proving rather tricky! Plus I’ve not really sat down and dedicated a lot of time to figuring it out.

I will say though that there are plenty of other slick features I like such as being able to create pages (a la WordPress), manage uploaded files (such as pictures) more easily, some more powerful template tags, finer-grained user permissions, better look-and-feel and just basically a more logically organised front-end. But until I manage to use a better WYSIWYG editor, I won’t be upgrading.

Which brings me onto WordPress. Many times over the years I’ve been tempted to migrate my site over to WordPress. It’s been ahead of MT for ages in terms of features and the fact that it’s written in PHP (which I know) rather than Perl (which I don’t and don’t particularly want to) makes me like it more. The latest version – 2.3 – has just been released and after installing it I’m impressed. The management pages are much faster than MT4′s, nicely laid out, and best of all – it uses TinyMCE for entry editing! I can quite easily write a plugin (plugins are incredibly simple to write since they’re PHP which I know as I said) to use the same options I use in TinyMCE on my current MT install. I’ve looked into migrating the content (pretty straightforward) as well as the layout (time consuming, but not hard) and maintaining the links structure so no links get broken and it’s mighty tempting.

Of course, you as a reader couldn’t care less, you see the output, not the tool that creates the site. “So why are you telling us about this John?” I hear you say – to which I reply that “you’ve got some attitude mister!”. Well I spend most of my time in Movable Type and very little of it actually browsing my own site, and you know what they say: a change is as good as a rest!

I know that the sensible choice is to just stick with what I’ve got now. It works and changing platform won’t really make any different to those reading my ramblings. Just because something is new and shiny doesn’t mean I should instinctively use it. But if I know me I’ll find myself sitting in my house on a rainy Sunday with nothing better to do and then port the lot to WordPress. Or maybe I’ll properly crack putting a decent editor into MT4. We shall see… And in Yorkshire most Sundays are rainy Sundays!