This site often consider many of these topics and you can questions, and many others