In Germany visa applicants are evaluated based on merit without a lottery for decade and it's working well. US could do something similar instead of using a hole in the fence but it doesn't look like the decision making system is capable of making hard decisions like that.