Is this really intended to be an open-ended discussion question (an experimental feature of Stack Overflow) ? It reads like a regular question and maybe should have been posted as such.