Registration forms: ask more up front, or as a 2nd step?
showerst: Why not just A/B test it? Many tools (like google optimizer) allow you to randomly try both, and then evaluate 1) Your conversion (sign-up) rate with each approach, and 2) How many non-valuable users each approach lets through. (This may take some extra work, just make sure you're saving the entrance route in your database).It may take a while to get a decent sample size, but at least you'll have an answer that's backed by data.