The prettiest pig

Now, I promised to write a little something about localised-maxima and how that relates to the design methodology of the Second Life viewer 2.x user-interface. This is it.

Now, when you want to evolve, refine or improve something – that is, to reach a greater height – it is necessary to go upwards. If you’re trying to get to the top of a hill, you keep going up, until there’s nowhere left to go but down. Life is full of curves like this. You want to improve some property and you keep on doing it until you hit the top of the improvement curve. When there’s nowhere to go but down (or backwards, if you prefer), then you’ve achieved it.

The world rarely gives us such simple shapes to work within.

The improvement of products (or indeed, of user-interfaces) presents us with a curving geography – a complex surface of properties, ideas and parameters full of peaks and troughs and highs and lows. The simplistic model of moving upwards doesn’t work any better than it does for scaling mountains. If you keep moving up until you can only move downwards, you’re probably going to wind up on top of a low hill, and not on top of Mount Everest.

That’s a localised-maximum (plural: maxima). Obviously, if your aim is to get up Mount Everest, you know better than to get stuck on some lowly knob – but that assumes that you have any idea what or where the highest point of the geography is. In most cases of product development you don’t. Otherwise everyone would start there, and all of our user-interfaces would be perfect, forever.

Instead, what’s done is to start somewhere that you think is going to go up a ways, and start polishing until you hit the peak. That might not be a very high peak, though. Basically, if you started with a pig, you might have the prettiest pig, but when all is said and done it is still a pig.

Nevertheless, you’ve achieved a localised maximum. There’s nowhere for the design to go but downwards/backwards. In order to gain more height, you have to be willing to make a hefty jump sideways – and usually not knowing what sort of geography you’ll find when you get there. Many don’t, and just make sure they’ve got the best-dressed pigs that they can have.

Now, I’m going to talk about the Second Life viewer user-interface. The user-interface for viewer 1.x was … well, laughable. I don’t say this because I disliked it. Quite the contrary, I rather liked it. You may have liked it too. Lots of people just plain didn’t. However, I call it laughable, not because I disliked it – but because it was laughed at. A number of mainstream media and tech-industry-news outlets doled out awards for it being among the worst user-interfaces they’d ever seen.

That is to say nothing of the torrent of complaints about it from many Second Life users themselves about the poor usability and organisation of the viewer 1.x user-interface. A torrent which was only largely stemmed with the release of the Second Life viewer 2.x user-interface, when a lot of people suddenly decided that – by comparison with the new one – the viewer 1.x user-interface just wasn’t really all that bad.

According to the Lab, the viewer 2.x user-interface had gotten rounds of focus-testing, usability-testing and refinements. Makeup and pretty dresses had been applied to the pig, and it was truly a gorgeous swine indeed. Yet, it was still a pig. I do not say this with dislike, since I didn’t dislike the viewer 2.x user-interface either.

The missing step here was measuring the usability of the viewer 1.x against the same usability criteria that viewer 2.x was measured against. Without that, there was no real way to tell for sure if the new user-interface was any better or worse than the old user-interface … no matter how much refinement and polish it had had.

Actually, I thought they were more or less the same, in the end, from a usability perspective. Just different in design and focus. You might have a different opinion. Odds are you probably do.

Anyway, the Second Life viewer 2.x user-interface got stuck in a localised maximum, with nobody willing to commit to a big jump that might – or might not – yield greater heights. This sort of thing becomes particularly problematic with a lot of ‘agile/scrum’ style development methodologies. Improvement work that doesn’t fit well into sprints tends to be avoided – and that leaves you unable to reach more promising ground. New work might get bundles of resources, but refining and improving it to gain some real altitude tends to get stalled on piddly local maxima.

Tags: , , , ,

Got a news tip or a press-release? Send it to [email protected].
Read previous post: