How you pick a freelancer/outsource makes a big difference too.  When I am looking to hire a freelancer I don't post a project, I go out and look at code that people have produced (open source) that are similar in function/scope/language/whatever and contact them to see if they are interested.