I think it is important for some cases at least, that the libraries used by a candidate be limited. For some algorithms (lets say a search algorithm), it would be convenient to use a searching library. What library a person chooses is informative, but not as much as how a person implements it himself/herself. I do understand that this is essentially a screening test, but if lets say, DuckDuckGo was hiring, then how a person implements searching, even if trivial goes a long way in deciding how applicable that person would be for the job. This will be extremely difficult to implement though, I'm just saying one can require them to submit source code and then manual checking can be done for candidates who pass the screen. The reason is that there are a lot of drag-and-drop style wizards that can just generate some skeletal web service that could be used to break this screening test.<p>In the end, this is an amazing service, but sometimes, these tasks are essentially trivial, like, for example, exposing a function to a web service. I believe (and this is just my opinion), that the function is more essentially than how one can wire it to different interfaces.<p>But, what do I know, I'm too drunk right now.