I never think this is fair. Why is it fair for the candidate to spend a day working on a project (which you will do for even simple projects, if you actually want to get hired) when it takes you ten minutes to review the code?
> The small take home project is extremely revealing and more useful IMO. You get to see their actual ability at coding a small feature. Is it well-composed? Did they include tests? Do I want to maintain his/her code?
Honestly, you don't get to see much if that person has a day job.
You don't know who wrote it, if they had a friend review it, if they spent two or twenty hours on the project. You don't know anything about them by reading this project.
If it is shit, yes, you probably shouldn't hire them. But if it is good code...
1) The user might be doing something your devs don't understand, because they are bad devs, not because they suck.
2) "Good code" is fairly subjective. I've written some pretty good code and been shot down for "not using a graphing database."