I always ask coding questions and I always ask a question or two that are extremely difficult. The goal is not to get the correct answers (although that is a nice bonus), but instead to see how the candidate thinks a problem through. A candidate's thought process is more important than their mad hacking skillz.