I remember hearing about take-home projects that amounted to free work for a company rather than a test of the programmer's skills, which is pretty smarmy. Anything can be abused or misused. Anyhow, the disincentive would probably be a decrease in applications if they start piling on the homework. Unless you're offering some amazing compensation and perks, or you're hiring for a project that could make a person's career, fewer people will bother when there are so many other companies out there hiring.
Maybe the least worst answer is to have people who have been through the hoops before, and can empathize with candidates, running the hiring processes.
Yes. I refused to do an exercise because it was quite obviously from someone's todo list, was a rather large endeavor, and didn't demand any particular skill aside from trying to find a sensible way to handle the many special cases (think parsing linux network configuration files and a pile of environment-specific behaviors).
I read it and told them (a) I had no interest in a firm that behaved that way, and (b) I had no interest in a firm that didn't understand what configuration management tools were for.
Maybe the least worst answer is to have people who have been through the hoops before, and can empathize with candidates, running the hiring processes.