Designing and engineering time: the psychology of time perception in software

Designing and engineering time: the psychology of time perception in software
Steven C. Seow
2008 This book was written with several practitioners and professionals in mind. The first group is the software engineers. Not everyone has had the opportunity (or wants) to take classes in human-computer interaction, usability, or user interface design, and not every company can afford to hire usability professionals to assist with optimizing the user friendliness of a website or the discoverability of the new features of an application. If you are a developer or an architect, you are one for a good reason: Your magic and craft is turning ones and zeros into a solution that makes life and work better. However, just as it is good to know what do if you get a flat tire and not rely on a mechanic, it is good for you to be able to apply simple concepts to improve the usability and appeal of your solution. The second group of readers I had in mind consists of usability professionals. This group includes a subset of my colleagues at Microsoft whose job responsibilities and talent make them the "voice of the user" to the rest of the company to ensure that our products and services are easy to use, easy to learn, and so on. If you are like my colleagues, you care not only about how a product or service is used or consumed, but also how it is perceived, what emotions it may conjure up, and what behaviors it may cause. This book provides the research, the logic, and other useful knowledge to help you understand how to deal with and correct usability issues arising from time and timing. A third group of readers is everyone else who has some responsibility to ensure that a solution is delivered with quality and value. This includes program and product managers, testers, marketing professionals, and all other decision makers involved in putting a solution in front of the user. Reality is such that we have make tradeoffs, compromises, and workarounds. Reality also dictates that we work with the resources that we have. This book takes that into consideration and provides as much practical guidance as possible on how to set reasonable and informed tradeoffs. Regardless of your background, one of the characteristic of this book that will catch your attention is the mishmash of information, anecdotes, examples, theories, and practices from a variety of disciplines and industries well beyond the purview of software engineering and human-computer interaction: service and retail, food and beverage, culinary, psychology, sociology, animal research, business management, entertainment, banking, communication, just to name a few. This eclectic presentation reflects the essence of the topic of the book—the multiple facets and universal experience of time. This human experience of time is difficult to describe, let alone improve for the human-computer interaction. This is where leveraging knowledge from other disciplines and industry becomes vital. For example, one of my earliest epiphanies about managing the experience of time came when I was standing in the checkout line at a local Costco. While standing in line, I noticed a store employee brandishing a scanner gun and furiously zapping the merchandise in the shopping cart of a customer in front of me. When she was done, she accosted me and demanded to see my Costo card. I surrendered my card, which she zapped with the gun in a split second, before she started rummaging through my merchandise. She hunted and zapped the UPC codes within a few seconds, and when she scanned the last item, proceeded to ditch me like she did with the guy in front of me. Not known for being shy, I asked her point-blank, "What did you just do?" She nonchalantly explained that she had just rung me up and that all I have to do when I get to the cashier is pay. Skeptical of how that works and worried that I might end up paying for someone else's merchandise, I quizzed her about how the cashier would know which group of merchandise is mine. She looked at me over her drooping reading glasses, waved the gun, and replied that she had scanned my card. A few seconds after she walked away without giving any time for a follow-up question, it dawned on me how brilliant an idea that was. Sure enough, when I got to the register, the cashier simply scanned my card and announced how much I needed to pay. My merchandise went from the shelf, suffered a little manhandling, and straight into the trunk of my car. She has effectively made very intelligent use of my waiting time and expedited my check-out process! It wasn't long after my Costco experience that I realized that these proven techniques are applicable to the design of computer software. Why can't we ask the users all the questions up front and then proceed to start the lengthy installation? Why can't we load up what users want to use immediately and then continue to load other features that are less important in the background? Why can't we provide instructions on how to use a product while the product is installing? We can, and we sometimes do, but not nearly enough because we keep seeing users throwing their hands up in air in frustration and hearing them describe an application, website, or some computer as "stupid." How can this be? At the time of this writing, the microprocessor found in the average home personal computer can perform billions of instructions per second. That is a lot of brain power. Surely, the computer cannot be stupid. What users are telling us is not that the computer doesn't have enough brains, but that it doesn't have enough mind. We are talking about having enough mind to be cognizant of what is important and valuable to the user, enough mind to be clear and proper about communicating to the user, and enough mind to be considerate and intelligent about how a user's time is expensed efficiently. This book, like a spin-off or sequel to the Wizard of Oz, is attempting to give the computer a mind (or more accurately, more of it). The objective of this book is to ensure that the user experience is expeditious. This is done by not blindly applying what has worked for other people, but to go one step further to understand why it works. I have divided the chapters into two essential parts. The first is organized by topic and provides specific knowledge, guidance, and other recommendations on issues pertaining to perception, user tolerance, responsiveness, detecting differences, progress indication, expressing time, and so forth. The second part comprises two compilations. The first is a compilation of proven techniques culled from psychological principles, business practices, industry research, and other sources. Yes, you will find a technique here that speaks to my Costco experience. The second is a compilation of violations that comprises the user experience in terms of how time and perception was managed. Here you will find some painfully familiar practices, such as the Time-Fluctuation Phenomenon mentioned by PC Magazine's John C. Dvorak. I hope that this book will elicit from you two responses that I get when I give talks related to the subject matter. The first is schadenfreude—a form of pleasure that you get from the misfortune of other people. This is commonly expressed by my audience as laughter when I relate the pain that people have to experience as a result of bad design in products and services. The second is the bobble-head effect—the approving nods from the audience, typically seen well before I deliver the punch line or finish describing an anecdote. Both are positive signs for me as a speaker because they indicate that the audience identifies with what they are hearing. So, if you find yourself somewhat giggly or catch yourself nodding your head as you read this book, then, to me, this book has earned its keep.