This is a contentious view because everyone has their own experience of code and documentation.
A few thousand lines of source code doesn't need much documentation.
Tens of millions of lines probably needs some.
A trivial system probably doesn't need much.
A complex system probably does.
A system with lots of external interfaces and dependencies probably needs some.
Where I think all experienced developers agree is that code must be written with support and maintenance in mind.
http://cvmountain.com/2011/09/whats-wrong-with-this-code-really/
Whether or not the system also needs documentation depends on the system and the context in which it will be maintained over its life.

In the calculus of communication, writing coherent paragraphs that your fellow human beings can comprehend and understand is far more difficult than tapping out a few lines of software code that the interpreter or compiler won't barf on. That's why, when it comes to code, all the documentatio...

Context is all-important, and hiring for MegaCorp is vastly different to hiring for NextBigThing.
Interviewers can learn from the mistakes of others; don't be that guy (inquisitor, invigilator, water torturer... http://cvmountain.com/2011/11/taxonomy-of-interviewing-characters/)

There's no magic bullet for hiring programmers. But I can share advice on a few techniques that I've seen work, that I've written about here and personally tried out over the years. 1. First, pass a few simple "Hello World" online tests. I know it sounds crazy, but some people who call themse...

I am no longer a part of Stack Exchange. I still have much literal and figurative stock in the success of Stack Exchange, of course, but as of March 1st I will no longer be part of the day to day operations of the company, or the Stack Exchange sites, in any way. It's been almost exactly 4 ...