Sponsored links


Valid XHTML 1.0!
Valid CSS!



Product: Book - Paperback
Title: The Inmates Are Running the Asylum : Why High Tech Products Drive Us Crazy and How to Restore the Sanity (2nd Edition)
Publisher: Sams
Authors: Alan Cooper
Rating: 5/5
Customer opinion - 5 stars out of 5
Best Business Justification for Interaction Design Ever!!!


I am the silicon valley chapter president of the Association for Software Design and World Wide Institute of Software Architects, and I'm always on the look out for really good books on what design is. Most books miss the boat entirely.
I had the pleasure to read the galleys before the book went to the publisher. As always, Alan has a very engaging and provocative writing style.
A lot of people confuse Design with programming. This is like confusing Architecture with construction engineering. But really they are very different, even in a legal context, for the design and architecture about fitness to purpose, and programming and construction are about appropriate implementation a design. It's easy to construct a house without an architectural design, but it can be very frustrating to move around and use the space. You can also program software without design, and the result is "software that needs to be spanked", as Alan says.
What is really great about this book is that Alan shows what software design is, in contrast to programming, and shows that while it is not an engineering science, it isn't touchy feely mumbo jumbo either. In the later chapters he talks about an actual methodology he uses in his company to do design, and these techniques can and should be widely copied.
You'll learn a lot from this book: you'll know what software design really is, AND how to do it. And unless you are a programmer with a fragile ego, you'll split your sides with laughter as well.



Product: Book - Paperback
Title: The Design of Sites: Patterns, Principles, and Processes for Crafting a Customer-Centered Web Experience
Publisher: Addison-Wesley Professional
Authors: Douglas K. van Duyne, James A. Landay, Jason I. Hong
Rating: 5/5
Customer opinion - 5 stars out of 5
Web designers: please read this!


If everyone designing a site read and implemented the advice in this book using the web would be an utterly different experience.
Beautifully organised and cross referenced, clearly written without in any way being patronising, this is a useful book for anyone designing an interfaced. People already working in interface design can learn a thing or two as well.
A must read.



Product: Book - Paperback
Title: Windows Forms Programming in C#
Publisher: Addison-Wesley Professional
Authors: Chris Sells
Rating: 5/5
Customer opinion - 5 stars out of 5
Excellent, in depth coverage


As you would expect from Chris, all the important topics are covered in good depth (though sensibly he defers to the equally good "Essential .NET: Volume 1" in certain areas). Even advanced topics, such as data binding and design-time integration (which are nevertheless very relevant in "real world" scenarios), are made extremely approachable by the clear descriptions and useful advice given.



Product: Book - Paperback
Title: Voice User Interface Design
Publisher: Addison-Wesley Professional
Authors: Michael H. Cohen, James P. Giangola, Jennifer Balogh
Rating: 5/5
Customer opinion - 5 stars out of 5
Very comprehensive


This book describes a methodology and gives pieces of advice for developing speech applications. The focus is on telephony applications. The book is based on the experience of the authors in developing such applications at Nuance.
The book is organized into four parts:1. Introduction2. Requirement gathering3. Detailed design4. Development and TuningEach part starts with a description of the general principles guiding the development of a speech application. They end with an "applied" example showing how these principles are used in a real application.
The introduction provides an overview of speech technology and an overview of the methodology (requirements, detailed design, development/tuning) used to develop a speech application. This methodology is used as a guide for the rest of the book.
The requirement gathering part covers meeting with the company that wants to deploy the speech application and getting information from them. The same kind of information as for other software projects is required: business case, target customers, environment integration, scope of the system, etc. Two interesting additions to the usual process are:1. Specifying the persona. How should the system be perceived (serious, funny, etc.)? This will impact the prompts, the selection of the voice actor, and the design of the dialog flow.2. Specifying the type of interaction: system directed or user directed. The former relies on grammars. The latter relies on SLM and robust parsing. This has a huge influence on design and realization.
The detailed design phase is concerned with designing the dialog flow, the prompts and the grammars. The authors put an emphasis in developing systems that (1) sound good and (2) are efficient. Sounding good means developing prompts that abide to spoken language rules (by opposition to written language) and paying attention to prosody. The sections on prompt design and prosody are very informative. Efficiency is ensured by making the dialog flow nicely. Techniques include thinking in terms of user scenarios, providing shortcuts to common tasks, educating users about efficient ways of using the system. Efficiency is also improved by helping users to recover from errors efficiently. Techniques here include quick confirmation strategies, providing help prompts, and providing access to main menu/operator.
The development and tuning part focuses mainly on tuning grammars and working with the voice actor. Tuning the grammar is done to ensure appropriate coverage while maintaining good recognition accuracy. Tuning must be based on real data since it is difficult to predict how people will use the system. Working with the voice actor is an important part of the system development. The authors give pieces of advice on how to have successful recording sessions.
The book has a nice balance of general principles and pieces of advice that can be directly applied. Compared to Kotelly's book, it has a more in-depth coverage of the topics. Compared to Balentine's book it provides a broader view of the development process as well as more detailed explanations of the principles behind the recommendations. On the minus side, the book is solely based on the experience of the authors. Although this experience is extensive, it seems that parts of the book are somewhat biased (e.g., SLM vs. grammar-based speech recognition, high focus on personas). It is not always clear when the numbers given in the books are based on real experience and when they are invented by the authors for the mock application. Some of the pieces of advice may also be difficult to directly apply in practice, since they depend on using vendor tools.
In my opinion this book should be required reading for developers of telephony applications and providers of platforms for speech application development.