what's this, why using it, why shouldn't use it