The second part is that it is inevitable that someone will eventually talk a good talk but be unable to actually walk the walk. That's when it's nice that we're in a right to work state. There's no point keeping someone on if they can't do the job you've hired them to do.
Of course, all that being said, this only works because we are a small shop, and the person doing the hiring is the same person who will work with "the new guy" from day one. This makes it loads easier than having to deal with hiring for someone else's department or even company.
The crowd that reads all of the software engineering books seems to be evenly split between good engineers and wankers.
I want to see a portfolio with real code behind it. I want to read your code. If I can't do that, you've probably not convinced me you're a good programmer, no matter how much you can talk the talk.
Reading looks like a good wheat from chaff question because someone who reads is continually educating him/herself. What gets points for a candidate? Language/framework books, algorithms, professional practices, essays, science fiction?
There is a world of difference between the people of the world who are interested in making themselves better developers and computer scientists and the people who just want to do the minimum necessary for a job.
Other than the obvious requirement of some modicum of honesty on a resume (like... if you're going to say you know Haskell on your resume, you'd better be prepared to tell me what a monad is), reading has been the best indicator of a hire for me than anything else. Of course, just because someone says they read a ton of books doesn't mean they're going to get a job, but I'll only do face to face interviews with people who give a shit about what they do.
We don't do the caliber of stuff that requires deep discussion about sorting a million integers with only 2MB of memory, but we do like to keep our shop as small as is humanly possible in order to keep the quality level as high as we can.
The absolute best indicator I've found for separating quality developers from the 9 to 5 set is finding out what they read.
80% read nothing and admit to it.
15% will make up something like "I read lots of things" or "I read blogs". This is the dangerous group, they're the astronauts.
The last 5% will tell you books they're reading, and more often than not will recommend books to you because they are passionate about what they read.
This simple test has yet to fail me. I'm sure there are great programmers in the 9 to 5 crew, but they aren't the people I want to trust in a pinch. I'll always prefer the guy who is doing this because he loves it over the guy who does it because it's a paycheck.