Writing code? That's the easy part. Getting your application in the hands of users, and creating applications that people actually want to use -- now that's the hard stuff.
I've been a long time fan of Krug's book Don't Make Me Think. Not just because it's a quick, easy read (and it is!) -- but because it's the most concise and most approachable book I've ever found to teach the fundamental importance of usability. As far as I'm concerned, if you want to help us make the software industry a saner place, the first step is getting Don't Make Me Think in the hands of as many of your coworkers as you can. If you don't have people that care about usability on your project, your project is doomed.
Beyond getting people over the hurdle of at least paging through the Krug book, and perhaps begrudgingly conceding that this usability stuff matters, the next challenge is figuring out how to integrate usability testing into your project. It's easy to say "Usability is Important!", but you have to walk the walk, too. I touched on some low friction ways to get started in Low-Fi Usability Testing. That rough outline is now available in handy, more complete book form -- Rocket Surgery Made Easy: The Do-It-Yourself Guide to Finding and Fixing Usability Problems.
Don't worry, Krug's book is just as usable as his advice. It's yet another quick, easy read. Take it from the man himself:
If you're wondering what the beginner's "how do I boil water?" recipe for software project usability is, stop reading this post and get a copy of Rocket Surgery Made Easy. Now.
One of the holy grails of usability testing is eyetracking -- measuring where people's eyes look as they use software and web pages. Yes, there are clever JavaScript tools that can measure where users move their pointers, but that's only a small part of the story. Where the eye wanders, the pointer may not, and vice-versa. But, who has the time and equipment necessary to conduct an actual eyetracking study? Almost nobody.
That's where Eyetracking Web Usability comes in.
Eyetracking Web Usability is chock full of incredibly detailed eyetracking data for dozens of websites. Even though you (probably) can't afford to do real eyetracking, you can certainly use this book as a reference. There is enough variety in UI and data that you can map the results, observations, and explanations found here to what your project is doing.
This particular book is rather eyetracking specific, but it's just the latest entry in a whole series on usability, and I recommend them all highly. These books are a fount of worthwhile data for anyone who works on software and cares about usability, from one of the most preeminent usability experts on the web.
Usability isn't really cheap or easy. It's an endless war, with innumerable battlegrounds, stretching all the way back to the dawn of computing. But these books, at least, are cheap and easy in the sense that they give you some basic training in fighting the good (usability) fight. That's the best I can do, and it's all I'd ask from anyone else I work with.
| [advertisement] JIRA Studio - Hosted software development suite. Build better software. Faster. Free trial » |
The best book I've used, long out of print, on usability testing is "A Practical Guide to Usability Testing" by Dumas and Redish. I used it to implement cheap-and-easy usability testing at a couple different companies. In my mind, it's the gold standard.
Jim Grey on April 1, 2010 4:56 AMSome things I've found useful in create more usable apps (if you can meet with your users):
-Ask the user to draw a UI on a piece of paper (simple - spend a few minutes) and have them explain how they want to use the application; design the UI with the user instead of just presenting them with one to test.
-Show the UI design to the user before it is connected to the back end; if you need too, hard code some sample data so they get the idea of what it might look like and how it would work. You will probably change part of the design at this point, and that's a good thing.
Jason Coon on April 1, 2010 5:28 AMfrom the UK's Amazon review section:
'I have to admit that I bought this book thinking on something quite different.
The title led me to think that this was a guide on how to recognize "by yourself" (no users, no usability tests, just heuristic evaluation -or, at least, also heuristic evaluation-) some common usability problems and I also believed that it was going to provide a set of common, fast, effective and low-cost solutions to them. (Quite funny thing a misleading title for a usability book, anyway)
I soon realized that I was wrong, because it is only on usability tests with users. You won't find any solution in this book, just a nice guide on how to recruit participants, prepare and run the tests.'
Only the names of the guilty have been omitted!
Spread the love ;0)
I saw this book at the bookstore, and it seemed interesting but the list price is $35 for a small book filled with lots of pictures and whitespace. Publishers really need to have a reality check about their pricing structure.
Openajax on April 1, 2010 7:20 AMRead this article on CBC.
http://www.cbc.ca/technology/story/2010/03/31/desktop-application.html
This would be an absolute NIGHTMARE if this program was widely used. I think companies would start putting stipulations in their user agreements that they would not support any customer who has this program on their computer.
We need to start developing better user interfaces for this reason. When there becomes a need for someone to build software that allows user to customize their own interfaces, it means we haven't been doing a good enough job at developing our user interfaces so users wouldn't feel the need to do this.
Murray Macchio on April 1, 2010 7:34 AMCould http://www.eyewriter.org/ be adapted for this purpose, and put actual eyeball tracking in the realm of realistic for everyone?
Manual-override.blogspot.com on April 1, 2010 9:58 AM"When there becomes a need for someone to build software that allows user to customize their own interfaces, it means we haven't been doing a good enough job at developing our user interfaces so users wouldn't feel the need to do this."
I don't agree with this. Many applications have many different types of users, and designing a single interface for all of them means cutting things that only work for some of the users. User customizable interfaces free the developer to provide all the functionality and let the user decide what works best for them. Firefox is a superb example of this, particularly with the popularity of Firefox extensions.
I think many users know better how they want to use an app than the developers do.
Quetzal on April 1, 2010 9:59 AMThe product that my team is developing doesn't have a UI in the sense that most people think of; it's a C++ library, so its user interface gets called an API instead. Nonetheless, issues of usability apply quite strongly here, as well.
Are books like Rocket Surgery Made Easy useful for this sort of thing? Any good recommendations for books and references on how to make APIs more usable?
Brooksmoses on April 1, 2010 10:47 AMOne thing I'd like to point out is that eyeball tracking is not necessarily a holy grail and it is certainly not the place to start. You can get excellent results from "lite" usability testing with equipment no more sophisticated than a computer running your app, a notepad and a pencil, and the developer(s) looking on as someone tries to use the product. I've done it that way any number of times and have watched developers be flattened, just stunned, by the usability issues this simple and inexpensive method uncovers.
Jim Grey on April 1, 2010 11:29 AMOne way I found to augment our usability testing is using UserTesting.com to actually have live users record themselves using your site through a predefined set of tasks you give them. Its relatively cheap and helped us figure out a number of things we needed to change as we saw patterns emerge through several tests.
Dallas DeVries on April 1, 2010 11:51 AMI don't know.
Seems to me that a pure text interface is plenty. And as for error reporting, all you need is "core dumped". If you don't know how to bring up the core dump in a debugger to see exactly what went wrong, you shouldn't be using a computer in the first place ... ;)
jdege on April 1, 2010 12:14 PMShrink wrap is one thing but custom software another. You cannot expect software developers to be graphic designers. We rarely understand the use of good white space, font size, color schemas, and all of the stuff that goes into a good UI experience. But customers don't want to pay for that. So the stakeholders and their entourage of project managers come back to the dev team mid-way and say "gee how come it doesn't look cool like web site X?"
Jamesstill on April 1, 2010 1:45 PMSorry, don't know why, but this reminded me of today's Dilbert..
http://dilbert.com/strips/comic/2010-04-01/
>"$35 for a small book filled with lots of pictures and whitespace. Publishers really need to have a reality check about their pricing structure."
This is an interesting attitude, namely that value of a book is measured by how many words are in it.
Mike Pope on April 1, 2010 11:28 PMI second the recommendation of Steve Krug's book "Don't Make Me Think". It is the best usability book I've read. However, you have to accept a basic premise that usability issues will vary for each website/interface depending on the content and functionality. This requires testing with actual users. Krug's book is not a checklist of things to do or not do; he just shows you how to do good testing at almost no cost.
I went to one of Steve Krug's workshop's years ago and it was kind of funny because people kept raising their hands and saying "I've got a button here and someone says it should be here, which place is best?" And Steve would just say "You should get some users together and test it to see which one performs best." A lot of people left a little frustrated because he didn't have simple answers - just a simple testing process.
The hardest thing I've found with usability testing is getting the willingness from stakeholders to build into the schedule time to test and then make improvements. Many times clients will balk at testing because they feel like you are the expert and you should know the best answer without testing. Certainly you learn things over time, but each project will have its own surprises.
Micah on April 2, 2010 6:58 AMHaving attended a Krug seminar recently, we were able to run through a quick usability test and do some of the things he talks about in the new book.
It really is quite an eye opener. If you haven't done usability testing at least once, you really need to. You'll be suprised.
A few take away notes:
1. Don't record what people think and/or say. The opinions of the testee are irrelevant. They're comments are irrelevant. It's ___what they do___ that is what is relevant.
2. You might think you have the best design, but you'd be surprised (really!) at what people do when confronted with your site. It will leave you scratching your head sometimes. Serious problems will be spotted almost instantly.
3. Use testers that have not seen the site before. Doing testing with people from the company is useless because they have likely used the site once. Even that level of familiarity is too much. Pay someone a few dollars to come in for a hour (you can even use unpaid family members if it comes to it :p).
Krug's first work is about web usability, but this book is geared to testing, because people don't do it enough basically. It doesn't need to be complicated or expensive and until you do it you won't see it's importance.
For cheap user testing for those who dont have the time to go and talk to users, checkout http://www.usertesting.com . Krug recommends this site in his book and its easily worth $100 for some basic feedback on your site.
Give it a try.
Trevor Doddrell on April 2, 2010 1:28 PMFor anyone in the Minnesota area, the team I worked with (myself included, as far as I know) will be doing a session on Informal User Testing at MinneWebCon (http://www.minnewebcon.umn.edu/) where we will talk exactly about how important usability was to us on our touch screen directory application (hint: in a week we revamped the home screen about 5 times).
Since I started at this job as a student, I've become a huge proponent of usability and usability testing... glad to see I'm not the only one! It's all thanks to my supervisor who really hammered home accessibility design and usability concerns whenever I worked on a project.
Kamran Ayub on April 2, 2010 1:56 PM@Murray Macchio,
You obviously quoted an April Fools' joke a few hours behind the schedule. It's just not possible to alter a program behavior by changing pixels on the screen.
----
As for the article... "Do-It-Yourself" and "Made Easy" already put me off. Thanks but no thanks.
I understand the importance of usability testing. But if it only takes a book with 168 pages to explain to me how to do usability tests that are after all "Easy" and "I can do them myself" then it becomes obvious I don't need the book. If it's so easy and I can do it myself, the only reason we don't do it is because we are either lazy or are having an hard time doing usability tests on tight schedule projects. Why buy a 168 page book to tell me something I already know?
Mario Figueiredo on April 2, 2010 6:39 PMto be success .. try to use best practices and tools ... TDD/BDD, http://people.ubuntu.com/~ianc/papers/community-agile/community-agile.pdf, https://edge.launchpad.net/+tour/index
Vitaliy Kulikov on April 2, 2010 6:40 PMWho is stil indecisive whether to buy the book or not you can listen to an interview at boagworld.com (Episode 202 - http://boagworld.com/podcast/202 ). Paul and Steve are very entertaining. Unfortunately there were not many critical requests about the approach.
Great point. It doesn't matter if you have the best product in the world. If folks can't figure out how to use it quickly you'll never get more than a few users.
I'll definitely be checking out those books.
Zain Rizvi on April 3, 2010 4:59 PMI have to say the best results I've gotten from (usability) testing is sitting down/chatting online whilst the most stupid (I hate that word, but it is the only accurate one) of users try to use my app and helping them through it so that they can keep hitting the UI snags and even turn up some bugs that everyone else was just too sensible to ever trigger. The stupid users tend to get stuck in many places and reveal whole piles of issues very quickly, whereas regular users tend to avoid the more common mistakes and adapt more quickly to your new ones.
Whilst I tend to know about problems that "regular" users pick up on before they even report them, I'm often surprised by the things the "idiots" try. Things so silly that, without my realising, I implicitly assumed users would not try to do them, whilst writing the code/designing the interface.
I've never released software with an intended audience of larger than a few hundred users, so I guess that if you have a big enough user base this might do itself through support e-mails etc.
Semi Essessi on April 4, 2010 5:53 AMIronically, your main page when someone types www.codinghorror.com is way too long.
princey on April 4, 2010 1:53 PMAlan Cooper's The Inmates are Running the Asylum was a pretty good read about usability too, and details some nice processes used in his interaction design.
Collin Reisdorf on April 6, 2010 10:19 AMWhen you are traveling without any agenda and just letting things hang loose then you are better in exploring the world without the help of a tour guide in shanghai.
shine1889 on April 27, 2010 11:52 PM2. if you are revisiting a place that you have toured with a guide
After exploring the ins and outs of a place with Shanghai travel guide, then it will be nice to explore on your own when you revisit that destination. Instead of someone guiding you through a map go and find the hidden gems of the place yourself.
3. When traveling alone
Traveling solo gives you a good opportunity to interact with the locals and hiring a guangzhou travel guide might just hinder with the interaction.
Shanghai is the largest city and the major business center with many commercial opportunities. Nanjing and Suzhou are historical places. Guangzhou is a modern prosperous city and Guilin is a paradise location. There are more than nine cities in China that should be visited.If you want to go to Shanghai travel,that is a nice choose.There is a lot of shanghai travel guide,it help you with line.
shine1889 on April 27, 2010 11:53 PMIf you can't get eyeTracking working with a laptop webcam, OpenCV, RentACoder, and $80, then, well, you aren't very clever.
Vancouverdata.blogspot.com on May 3, 2010 11:04 PMVoyance par téléphone Some talk too much without saying anything! at least here I find what looks so clear and precise...
lora on August 10, 2010 4:48 AMTarot Marseille I wish you a good continuation.
lora on August 10, 2010 4:51 AMvoyance paris I Want to Tell You That Really your article is amazing <3
lora on August 10, 2010 4:52 AMThis is only a preview. Your comment has not yet been posted.
As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.
Having trouble reading this image? View an alternate.
| Content (c) 2009 Jeff Atwood. Logo image used with permission of the author. (c) 1993 Steven C. McConnell. All Rights Reserved. |
Posted by: |