This is discussed a lot on the forum. For starters here is 2 topics you could read through. I’m sure there is even more.
Hope that helps.