You shouldn’t have to be taught
I called my Mom at work recently and she picked up the phone with a sigh of relief. She told me that I managed to get her out of a painful meeting.
“What was it about?”
“This company was spending the whole morning showing us around this new web management software.”
“You mean like showing you what it can do?”
“No, like showing us where to click to do each thing”
My Mom works at a worldwide corporate accounting firm in Education and Training. Even (or especially) at an organization that size, I couldn’t believe that they would take an entire morning to take people out of their desks and show them ‘where to click’. Maybe I’m just completely naive, but you shouldn’t have to be ‘shown around’ an application.
I’ve been thinking a lot about User Interface (UI) recently, and what it means to be ‘User Friendly’. I think there are a lot of misconceptions in the recent bombardment about what a good interface should be. I have to preface this by saying that I think the recent wave of web applications, in terms of UI are, in general, leaps and bounds over the applications of 5 years ago. At some point its become apparent, at least in the public web, that user experience is important.
I believe that a great application should be completely self explanatory. Upon first glance, as a user, you should be able to know ‘where to click’ and what your possibilities of action are. Applications aren’t always simple or limited to few tasks. However, just because an application has complicated functionality and abilities, does not mean that the interface has to be just as complicated.
I think no where is this more a problem than in the Enterprise application space. I’m about to set out on the journey of developing and licensing ‘enterprise’ software, so this discussion is very pertinent to me now. It could be very easy for me to build all the functionality required, and then just throw a thousand links to each action on a page and expect to just show clients how to use it. There are so many reasons why spending a little more time thinking about and implementing a clean and focused interface is such a better idea.
- Customer support is not scalable like databases or servers. Sure, you could build a team of people who could go from institution to institution teaching clients ‘where to click’, but if you really want to grow quickly there is no way to scale person-to-person instruction on a manageable level.
- It focuses the applications direction. Jason Fried would have you build the interface first, but I think simultaneous construction is more realistic. Letting the choices you make about where navigation goes can inform your decisions on the code and architecture. Deciding what’s important to the application can inform both the interface and the development.
- It makes everyones lives easier. That may sound a little delusional, but spending time on interface makes every level of development, testing, and use a little easier (or at least it should). If you’ve ever done QA or functional testing, you’ll agree that not having to search for a link or function to test is a relief. If QA’ing the application is difficult perhaps things aren’t as easy as they should be?
Applications in general should not have to be taught. If they are too complicated to use without some sort of guidance the help should be viewable and readable from within the application itself. As a user I should be able to sit down an go. No lessons, no meetings, USE!