Showing posts with label HCI. Show all posts
Showing posts with label HCI. Show all posts

13 April, 2008

Unix and the Asus EeePC

Almost 25 years ago, I got my first experience of using an Apple Macintosh computer. Until that point, I had used various other machines, each with its different operating system. My favourite, at the time, was Unix, with which I had become quite proficient. Yet the moment I saw the Mac, I realised that command-line operating systems were dead and buried. The new windows-based operating systems were a quantum leap forward and there would be no going back.

How wrong I was! Even as Xerox, Sun and Apple tried to drag us into the future, IBM and Microsoft threw out a massively heavy anchor – the IBM PC, running DOS – that held the world back for 15 years while Microsoft slowly, painfully, caught up to where the great pioneering companies had long since been. Eventually, Microsoft Windows became a very good, windows-based operating system with high levels of usability.

In the years since I first saw the Mac, I have used only MacOS and (from Windows 3.1 onwards) Microsoft Windows. I've also used 'palmtop' or hand-held computers for writing with (as I have mentioned before). These each had their quirky little operating systems but I never did much with them so there wasn't much to learn, or complain about. The last of these, my HP Jornada 720 is a Windows CE machine – close enough to desktop versions of Windows that it was easy to use. I've been looking for a replacement for it for a couple of years now and there just isn't one. So when I saw the Asus EeePC advertised, I realised this was about as close as it was going to get and grabbed one. (Well, Wifie bought it for me as a present, actually, knowing how keen I was.)

The Eee is a little miracle – a fully-fledged laptop that is just a little bigger than a DVD box (that's it on the left as I was showing it off to some friends). It's twice the size of my beloved Jornada but packs in so much more – for so much less money - that I was willing to give it a go. The operating system on the Eee is Unix (although you can install Windows XP if you want to) but not the Unix I used to use 25 years ago. This is a modern Unix with a proper, windows-based graphical user interface (GUI). The machine has all the networking capabilities you'd expect in a modern laptop (including Wi-Fi) as well as three USB2.0 ports. All it lacks is optical media (DVD/CD reader) and the kind of fat memory we feel we need these days. For my purposes it is ideal. I only want it for writing on. What's more, it comes with the Open Office.org applications pre-installed – and they are the ones I use all the time now anyway (as I have also mentioned before).

Let me say right now that the Eee is exactly right for my purposes. The only drawback is that it has Unix installed. What I've discovered since using the Eee is that Unix with a GUI is still the same old Unix it always was but with a prettier face. Unix, it seems, is not a patch on Windows XP. It is not a patch on MacOS X either. It looks superficially similar, it has windows, it has pointers, it has Help, and so on but it's usability is awful. When things go wrong, one discovers the Help is badly-written, minimal and obscure. The way things are done is hopelessly complicated – 'user hostile' is the phrase that springs to mind.

I'm an extremely experienced computer user, one-time programmer and one-time Unix user, yet I have been completely unable to solve trivial problems on the Eee – like loading and installing a new printer driver. (I won't bore you with this but it is so fabulously complicated that I have had to spend two days trawling through online tutorials and user-group forums just to get to grips with what I need to do. I haven't tried to do it yet – I'm saving that for when I have most of a day to spare!) I also haven't yet managed to get my Eee to network with my Windows desktop (partly because of the added complication of my crappy Telstra wireless broadband modem but also because the copious and well-written Windows XP help files assume you're connecting to another Windows machine, while the minimal, useless Unix help files assume nothing will go wrong with the simple wizard process that a child could follow without instructions.) I've spent about a day in the online forums on this issue too – enough to convince myself I will never solve it and I'd better call in a network guru.

Part of the problem with Unix today seems to be the plethora of slightly different versions that exist. If your printer company, for an example close to my heart, only produces a driver for one Unix version, you can't install it in another. Well, actually, you can but first you have to translate it using another piece of software. But then you discover this piece of software is written for yet another slightly different version of Unix than the one you have and you'll need to download and install a sizeable software environment all of its own just to make it work (which some experts in the online forums say you should really avoid doing if you can help it – which you can't).

Another part of the problem is usability. Usability is a deep and fundamental property of a system. It isn't a gloss you add to the surface. Apple has always understood this. Microsoft has gradually come to understand this. The Unix community just hasn't got a clue! However good the GUI on a Unix implementation, it will never have the usability of MacOS or Windows if the underlying user tasks are not themselves usable, or if the user support infrastructure (labels, layout, instructions and help) is not fully cognizant of the users, their mental models of the system, their tasks and their task knowledge, or if the underlying file systems and command structures are not fully consistent with the user's task model.

Finally, and this is also a usability issue, part of the problem is the shallowness of the GUI. It is assumed in the Unix world that, as soon as something goes wrong, or as soon as something complicated needs to be done, the user will abandon the GUI in favour of a command-line interpreter! I have only had my Eee a few weeks but I now have on my wall a summary of the Unix command shell syntax and a table of Unix commands. All you Unix evangelists out there, please take note. People will keep buying Windows (and MacOS) in preference to using Unix for free as long as Unix feels like a horrible, unfriendly kludge instead of a well-organised, intuitive appliance.

To be fair to Unix, its main audience comprises techies and nerds. You only have to look at the Unix online forums to see this – all those propeller-heads gabbling away to one another in impenetrable jargon. These are people who like to live with their heads under the bonnet. They are actually happy to see inside the machine and fiddle with the cogs and levers. But if Unix is ever going to make it into the real world, where people don't have the time or inclination to type hieroglyphs into 1970's-style 'Teletype windows' – a world where most people find even the complexities of Windows XP seriously challenging and completely irrelevant to what they need to achieve – then Unix is going to have to clean up its act.

This is obviously not impossible. The Macintosh itself is now a Unix machine but still (almost) as usable as it has ever been. So why isn't the Asus Eee?

One of the sad things about the Eee's usability failures is that it is a fantastically popular machine. Its price-performance level has made it a truly desirable little computer and it is selling like hotcakes. Which means that hundreds of thousands of people – eventually millions – will be getting their first exposure to Unix through the Eee and, I confidently predict, they will not be enjoying the experience. In fact, it will probably drive them quickly back into the arms of Microsoft. Soon, someone will have a machine out at the same price-performance point but running Windows out of the box and it will grab Asus' market away from them in a flash. I also predict that Asus will soon drop Unix altogether as a the OS for the Eee and will only sell it with Windows installed.

Frankly, Unix deserves this treatment. It is still a very long way from being a mass-market product.

08 February, 2007

OpenID - One Login To Rule Them All

Yesterday I gave myself a URI. That’s a uniform resource identifier in case you’re wondering. You already know something about these, even if you don’t think you do, because the URLs we use as website addresses are a kind of URI (URL is short for uniform resource locator). Just as a URL uniquely identifies a page in a website (among other things) a URI uniquely identifies anything at all you might find on a computer network.

I gave myself a URI not because I am such a nerd I need a computer-readable tag to identify myself (although it might look cool on a T-shirt – only kidding) but because you need one to take part in a great new scheme called OpenID. OpenID is a free and vendor-independent system that allows each person to have their own user name and password for logging on to websites. Yes, I know you’ve all got plenty of these already (I probably have about 50 myself) but this one could one day replace all of those. Just imagine it, a single user name and password that can be used at any website that participates in the scheme. In addition, you can add a profile (or a set of different profiles – known as ‘personas’ (sic) in OpenID-speak) so that websites you are dealing with for various services can pick up the data they need about you without you having to type it again and again.

There have been many other schemes like this but OpenID has the benefit of being simple, free, and not tied to any particular vendor. It leaves you in complete control of your personal data and your identity does not reside on your PC (or Mac - sorry Wifie). It is relies only on you having an unique identifier – that’s what the URI is for – and that is maintained on a set of servers around the Web.

All of these good reasons won’t make anybody use it though unless some high-volume websites adopt it for login management. That’s why the recent announcement by Bill Gates, that Microsoft would be supporting OpenID – along with earlier announcements by Technorati, Symantec and AOL – give me some hope that this one will take off.

And the best way to help it along? Go to MyOpenID and get yourself a URI, a user name and a password. It takes about two minutes (even without broadband). Then look out for websites with the OpenID logon on them. Hopefully you will see more and more of these in the next year or two.

05 September, 2006

Checking my pulse

Dan Saffer just wrote an interesting piece on why someone might want to be an interaction designer. To be honest, this was probably only interesting because I am an interaction designer. To anyone else, it might seem a little dull, if not totally pointless.

In fact, you might even be asking yourself, so what’s an interaction designer when it’s all at home? Well, an interaction designer is the person who tries to understand how you would best be able to work with a piece of software (a website, say, or a word processor, or that database application you use at work) and then works with you and the software folk to come up with the optimal design. Ever heard the word ‘usability’? Well, we’re the people who try to achieve it.

Anyway, the interesting thing was that the reasons he gave for being one of these (an interest in human psychology, lots of variety in the work, lots of problem-solving, it's fun playing with cool new technologies all the time, and, of course, wanting to make the world a better place) are essentially the reasons that motivated me all those years ago when I first got into this game. And it begs the question, are these the reasons I’m still at it, twenty-five years later?

Certainly, you don’t do this job to get rich. Although really good interaction designers are as rare as hens’ teeth and despite the fact that their impact on a project can be enormous and have huge financial benefits, they don’t get paid much more than a halfway-decent Java programmer – which are ten-a-penny and often wear really nerdy T-shirts.

You also don’t do it for the respect of your peers. Most people – including your management, the IT team, even the end-users you work with – don’t quite understand why you’re on the project. ‘Surely we could just let the programmers design the screens,’ they say. ‘No, we can’t afford to spend so much time understanding our users and the tasks they do,’ they say. ‘And why would you want to test the product with the people who are supposed to use it? The people who built it find it easy enough to understand.’ To get good work is an uphill struggle, all the time. Most of the people who buy or build IT systems just assume they will be ‘user friendly’. It doesn’t seem to matter how many times they are obviously and patently proven wrong.

Yet interaction design has given me a comfortable living for a quarter of a century now and that’s not a bad thing. (My English working-class background has instilled in me the absolute imperative to be a steady, consistent wage-earner and to abhor the idea of unemployment. So, keeping me off the dole queue is something for which I’m grateful to my chosen career.)

And, although the sceptics on the IT team may not see the point, on those rare days when I’m running a user requirements workshop, or working with users in their workplace to understand exactly what their job is and how to support it, and one of them says, ‘I’m really glad someone is actually listening to us at last,’ months of rejection and struggle are blown away and I actually feel my life is worthwhile.

So I guess that, deep down, below all those years of cynicism and all the other defences against a world that doesn’t understand or appreciate what I do, it is the chance of doing something that will make a real difference to people’s lives that keeps me logging on in the morning. I hope that enthusiastic youngsters like Dan can say the same thing a couple of decades from now.

The Gray Wave Jukebox


Powered by iSOUND.COM