Sunday, March 02, 2008

Book Review: "Web Usability For Dummies"

I've not read a lot of the "Dummies" series, but whenever I've picked one up, I've been impressed by the quality of the product. "Web Usability For Dummies" is no exception. In about 300 pages, the authors do a good job of laying the foundation for a solid understanding of the important aspects of usability. It looks like this book might be out of print now, but you can probably find a copy at your local library or via Amazon.com.

What I particularly liked about this book was the focus the authors give to the Usability Design Cycle. This is a process that helps answer questions about designing for usability and is broken into six steps that are performed in an iterative fashion. The usability design cycle starts with "Study the user", then leads to "Set goals", "Design", "Build", "Test" and finally "Deliver product". It's truly a cycle since the process should be iterative, each part building upon the previous step. As the authors state in the beginning of the first chapter, there are many good books out there that focus on the "build" part, but not nearly enough on setting goals, designing or testing, which arguably are the most important. Thus, they make this the thrust of the book and why I think it's worth picking up.

Chapter 1 begins the book with an overview of what web usability is all about. This leads into a discussion about studying your users (the first part of the usability design cycle) in Chapter 2. Sharp readers will remember that Mary Beth and her team kicked off the whole Notes 8 project by doing this very thing...studying what the users of Lotus Notes wanted, how they interacted with the software, etc. While the focus of this book is clearly on web design for external websites, there are enough nuggets of information that you can use for internally driven sites or application design in general. I liked the section in Chapter 2 that dealt with actual customer visits. I think this is something more developers need to do and this part of the book might help you become a little more comfortable with the process.

Chapter 3 looks into the whys and wherefores of setting goals for your website. This includes issues such as determining what needs of your users you really want to meet, creating actual business goals, using metrics and setting goals for the site's usability. This chapter rounds out the first part of the book.

Part II of "Web Usability for Dummies" (Chapters 4-6) is all about the design of usable sites and includes topics such as organization and site navigation. Part III (Chapters 7-9) explores the concepts involved in creating usable web pages. Since this book is several years old, there are bits and pieces which aren't really relevant anymore, but as a whole the ideas are still pretty solid. If you're a Notes developer who is just interested in usability in general, you can probably skip these parts of the book, as they are pretty specific to the web.

The final parts of the book deals with "Reaching a Broad Audience" (Part IV, Chapters 10-12) and "The Part of Tens" (Part V, Chapters 13-16). Subjects touched on include broadening the appeal of your site as well and several nice lists such as Do's & Don'ts, ten cool tools for usability, etc. Chapters 11 & 12 are my favorites since they deal with (surprise, surprise) usability testing! The authors feel that this subject is important enough to warrant two chapters and this book is probably worth tracking down just for their advice on the matter.

When all is said and done, "Web Usability For Dummies" is a fun, quick read presented in the standard Dummies fashion. Experienced designers may not find a lot of new material here, but this book would serve as a great introduction to many of the important concepts in the field of usability. With used copies available on Amazon for as little as $3.20, it wouldn't be a bad investment to add this to your reading pile. While certain chapters may not directly pertain to the work you are doing, the first part and last part of the book provide a very compelling case for usability and are certainly worth the cost of admission.

Labels: , ,

permalink | leave a comment

Saturday, February 02, 2008

Book Review: "Don't Make Me Think"

One of the must have books on my reference shelf is "Don't Make Me Think, A Common Sense Approach to Web Usability" by Steve Krug. I've recommended this book to many people, so I thought it was about time to give it a proper review.

One of the things that first drew me to this book when it first appeared was the subtitle. I've said it again and again, but it bears repeating...much of the "science" of good UI design is just common sense. This begs the question as to why some people find it so hard, and I think the answer lies in the idea of common sense in our society. We are so busy being busy that oftentimes we don't slow down enough to really *think* about a problem and thus the common sense solution eludes us. A book like "Don't Make Me Think" is a great way to make you put on the brakes a little and examine the fundamental principles of usability. For those of you that aren't web developers, don't be scared off. Although the focus of Mr. Krug's book is web design, most of the concepts are equally extensible to other design work, such as building a UI in the Lotus Notes client.

If you've not read any books on interface design or usability before, this book provides the perfect intro into that world. As he mentions in the forward, this book is for those people or companies that don't have a usability professional on board or can't hire one for some reason or another. If you're like most Notes shops, you probably have a small budget since we can do so much with so little. By taking the ideas introduced in "Don't Make Me Think" you can be on your way to doing this work yourself very quickly.

The author's writing style is both casual and witty and he follows the advice of his title when explaining new concepts, breaking it down so you can understand the underlying psychology without getting bogged down in terminology or theory. Chapter 1 begins with an introduction to what the author calls "Krug's First Law of Usability": "Don't Make Me Think". Simply put, this means that your ultimate goal is to design your interface so that when you look at it, it is immediately evident what you can do and how you go about doing it. In this chapter, Krug explores some of the elements of design that put more cognitive load on us than is necessary and then demonstrates ways to reduce this load. This is done through both the narrative as well as excellent graphics which simply but elegantly display his point.

Chapters 2 through 5 begin the exploration of how we really go about using an interface and set forth the guiding principles we need to be thinking about when designing. First, Krug talks about the difference in what we design for (reading, more reading and even more reading in a set pattern) vs. the reality of how people scan through an interface in a seemingly chaotic way. He then extends on the lessons learned here by helping you understand the techniques you can use to design interfaces for scanning rather than reading. He addresses five important things you can do to achieve the goal of capturing user eyeballs as much as possible: creating a clear visual hierarchy, breaking pages into clearly defined areas, minimizing ui noise, making clickable elements obviously clickable and taking advantage of established UI conventions. This first section wraps up with a discussion of why we like "mindless" choices and the importance of good copywriting and how you need to omit all but the essential words in your design.

Chapters 6 and 7 focus on the elements that Krug believes you must get right in your design. Chapter 6 is concerned with laying out the fundamentals behind good navigation. Since this is an area I call a lot of bad designs out on, it's one that I really enjoyed. Krug discusses some of the basic concepts of navigation and why navigation is so important to a user. He deconstructs various navigation conventions and explains why they work or don't work effectively. He also addresses the good use of search, page names, breadcrumbs, and the tab metaphor. Chapter 6 ends with a number of great graphics which show several sites as they were designed and the author's analysis of what was wrong. He then shows a revised version based on what he would do and in some cases also shows the company's own effort at making some improvements. As they say, a picture is worth a thousand words, so it would be good for the reader to spend some time pouring over these excellent examples. Chapter 7 is devoted to the design of the homepage and how to best design that important first impression. As in Chapter 6, there are a lot of great "before and after" examples to round out the theory.

The next two chapters of "Don't Make Me Think" are concerned with how you make sure you did the right things in your design. That is, they focus on one of my favorite topics, the idea of usability testing. In particular, Krug wants the user to walk away after reading these chapters realizing that usability testing is within reach of every single developer out there. Sure, in the ideal world we'd all have a department of usability experts that are there to critique our designs and help us craft the most user-friendly interfaces possible, but we all know that our day to day jobs are far from the ideal world. Still, Krug argues, you can find value in any amount of testing you can do. Krug espouses some common sense thoughts about usability testing, such as the idea that it is an iterative process, that you should test early and often and that testing even one user is better than testing none. Once he convinces you of the importance of usability testing, he presents some simple to follow instructions on how you can carry out your own tests. As he points out, it doesn't have to be expensive or fancy. You really can do this stuff on a shoestring budget. Chapter 9 ends with a sample excerpt from a test session, which in my opinion is probably worth the cost of the book right there.

Krug wraps up the final chapters of the book with a focus on the larger concerns of interface design, such as why usability should be considered a common courtesy, where accessibility comes into the picture and how to deal with a boss that "doesn't get it". If you just want to cut to the chase and start improving your designs right away you can skip these chapters, but they do a nice job of summarizing at a high level many of the salient points of the book.

All in all, "Don't Make Me Think" is a thoroughly enjoyable read and a very practical book for those that aspire to create better interfaces for their users. Coming in at just under 200 pages with lots of clear illustrations, you can probably read this book in a couple of evenings, which is great for those of us intimidated by the 1000 page tomes that populate the computer section in most bookstores. Probably the best part of "Don't Make Me Think" is that it applicable to the work you are doing today. You can read a chapter or two and immediately start putting the concepts into practice and the value you'll get as you do so far exceeds the book's cover price. "Don't Make Me Think" is highly recommended and I hope you make the decision to add it to your reading list today. You don't even have to think about it! :-)



Labels: ,

permalink | leave a comment

Friday, February 02, 2007

Some Good User Experience Reads...

Hi everyone! One of the things I've been planning to do for a while is create a reference area where I point out the books, articles, etc. that I feel are essential reading if you are interested in the user experience and interface design. Well...this isn't it, but I AM working on it. In the meantime, I wanted to point out a couple of good recent articles that I came across that are definitely worth a read.

Heuristics for Modern Web Application Development by Andy Budd

Paradox of the active user by Matt Linderman

And finally...don't let your manager get involved with your designs unless he or she knows what they are doing! :-)



Have a great weekend!!!

Labels: , ,

permalink | leave a comment

Sunday, November 19, 2006

Book Review: Lotus Notes Developer's Toolbox

Well, I'm certainly no Tom Duff, but I thought I'd share my thoughts on a new Notes development book that the fine folks at Pearson Education sent me a couple of weeks ago. The book in question, Lotus Notes Developer's Toolbox: Tips for Rapid and Successful Deployment by Mark Elliot, would do well to find a place on the shelf of every new and intermediate Notes developer. According to the back jacket, Mark has been employed by IBM since the early 90s and has implemented commercial applications for many large clients. He uses this background to craft a very solid technical book that covers a lot of ground.

While there is probably nothing new here for the truly advanced Notes crowd, I would recommend this book highly for those developers that have been working with the technology for a few years and want to fill in a lot of the gaps. Even better, this book should be required reading for someone new to Lotus Notes. Thinking back to my introductory days of Notes development, owning this book would have been a blessing. Mark does a fantastic job of starting at the beginning, introducing the reader to the concept of Notes. He explores often overlooked pieces, such as the various clients, installing Notes, an in-depth tour of the Designer client, etc. As Chapter 4 kicks off, we get into the actual architectural details of Notes before he launches into discussions of the Formula Language (Chapter 5), LotusScript (Chapter 6) and the fundamentals of a Notes application (Chapter 7).

The next several chapters are quite nice, as they focus on real-world applications. Each chapter introduces a new project (workflow app, calendar database, etc.), walking the user through all of the bits and pieces to get it going. There's even a section of the book that delves into web apps via Domino.

The remainder of the book builds upon information introduced before, focusing on specific techniques in LotusScript, Formula Language, building views, writing agents, etc. Mark rounds out the book by addressing data management, security, troubleshooting and application deployment and maintenance. Two appendices provide information about the related online materials and a discussion of Notes' future state. Of course ( and yes...I'm a bit biased), I'd have liked to see more emphasis on the importance of designing an attractive and usable interface in Notes, but I guess we'll need to wait for the sequel. ;-)

All in all, this is probably the most solid Notes development book that I've ever read. I especially liked all the "Note" sections that are interspersed among the text. These might be one of the most valuable parts of the book, since they point out little tips, tricks and pitfalls that many of us learned the hard way. For all of the beginning and intermediate Notes developers on your holiday shopping list, I'd be happy to recommend finding a place for Lotus Notes Developer's Toolbox on it.

Labels: ,

permalink | leave a comment