Recently I was discussing with some colleagues the characteristics of modern, Internet Scale, Applications. It was some interesting discussion and I will highlight some of the points in another post. About the same time I was reading the book The Halo Effect by Phil Rosenzweig (http://the-halo-effect.com/). In case you are not familiar with "The Halo Effect" the Wikipedia defines it as follows:
The halo effect or halo error is a cognitive bias in which one's judgments of a person’s character can be influenced by one's overall impression of him or her. It can be found in a range of situations from the courtroom to the classroom and in everyday interactions.
Basically, it means that we are often associating characteristics in retrospective, based on an outcome rather than objective research. Let's say for example, I could claim virtualization is the basis, and first step, of successful cloud migrations. While that seems reasonable there is the chance I could leverage virtualization in instances where it actually will cause the project to fail e.g. because of potential performance issues. Hence, I could associate virtualization as a failing, or success, factor for cloud migrations depending on the outcome. The example shows the classic notion of the Halo Effect or Halo Error, categorization based on the outcome.
The point I wanted to make with this short post is that we are usually looking for recipes for success and very often we are mislead by a Halo that seems to provide us success in a box, or silver bullet. Even though, we all know there is no such thing as a silver bullet. Therefore, I am arguing that bulleted lists of characteristics for successful projects are helpful guidelines, but we have to keep in mind that success is not based on a few variables alone but has to be seen in context and that context very often defines if a recipe is successful in a certain situation or not.
I will certainly be more cognizant of the Halo Error in future projects and hope you will be too.....