In order for anyone to be able to get value and enjoyment out of software it needs to be usable, and nowhere is this more true than on mobile platforms. Software developers often make the excuse that their users have special skills or knowledge, or will take the time to do training or read the manuals before they true and use their software. On mobile devices users expect to be able to take your apps and use them immediately without any previous knowledge. If a user can't use the app, they will simply delete it. There are also other challenges of the platform that make designing for mobile a tricky experience, small screen sizes and a lack of space, the differing physical conditions that the user may use their device in, and the way that they use the software. A user is much more likely to use an app for a brief amount of time, and then expect to be able to come back to where they left off, potentially many hours later.
There are two ways effective ways to learn about designing usable interfaces. One is to spend many hours watching users use different interfaces to learn about how they really use them - what they do and what they expect to happen. And the other is to look at the designs of other interfaces and explore what makes them work or not work for the users. This book combines the essence of both of these methods to provide an excellent guide to best practices for usable design on mobile platforms, and also as a source book for apps that demonstrate the effective use of these design practices.
Chapters are provided for patterns for primary and secondary navigation, forms, tables and lists, search, tools, and charts. I was also delighted to see several chapters covering `user assistance' for the apps, such as guides, tours, and demos for new users, feedback and affordance, and help.
It is always easier to explain why an interface is bad than it is to actually design a good interface, but I think it is always valuable to see `how not to do it' as well as guidance on `how to'. Each design pattern chapter has examples of poor interface design with reasons why these do not work for users. In addition, there is also a whole chapter on `anti-patterns', providing examples of apps with common design problems (certainly I've seen them all in my time!). Examples are designs trying to be innovative at the expense of user understanding, and using controls or metaphors in a way that is unexpected for the user.
The appendix provides a handy list of do's and don'ts for each pattern. Additional examples can be found on the companion website and flickr page.
This is a book that I think would be of use to anyone who is new to usability or designing on interfaces on mobile. It is also useful to mobile developers who want a resource for inspiration for app design in general because of the many images of existing apps. I would suggest that anyone not already familiar with usability and interface design actually read it through, rather than dipping in and out, because there are useful tips and user behaviours described across the book that apply to multiple patterns. Because of the chapters on various user assistance techniques, I think this book would be of value to technical communicators who may want to provide help for their organisation's mobile apps.