There are a lot of existing and recent threads about this, please review them accordingly:
and so on.