Cooper gave some good guidelines that I believe software developers who want success should follow, although I have to say at first that I did not agree with everything that he said. Too many times we software developers design products based on our preferences and when these products fail, we are puzzled as to why it happened. As Cooper stated in chapter one, a programmer, business or software developer main objective should be to satisfy the user’s goal when he/she uses that product. Satisfied users results in a successful product.
He also made the point that we sometimes design products based on the wrong criteria. These may include competition from other companies, designing with business resources in mind (trying to save as much as possible and consequently creating an inefficient product, designing based on what information is gathered from market surveys. Another potential reason for failure is listening to what users say they want. It surprised me to know that we users do not really know what we want. (I always thought we did)
Cooper made a valid point in that programmers should not be the designers of the software or product. This makes perfect sense to me because as a programmer I always tend to go for the technique that will make my work easier. This may work for me as the programmer, but the final product will most probably lack good usability. A programmer is not equipped with the design mindset that will allow him to create software focused on the user’s goals and needs.
I want to end this short summary of the chapter by saying, if you design with the goals of the user in mind your products would have been be better than 80% of the products out there.