As reported in the New York Times:
When older people can no longer remember names at a cocktail party, they tend to think that their brainpower is declining. But a growing number of studies suggest that this assumption is often wrong.
Instead, the research finds, the aging brain is simply taking in more data and trying to sift through a clutter of information, often to its long-term benefit.
This makes sense.
The myth is that humans use only a fraction of their brains. In truth, however, fMRI’s and other tests observe neurons firing across the entire brain (when we use it). And when one area of the brain grows–in order to get better at one particular kind of thought process–it must steal neurons from the neighboring regions. Different parts of the brain are always competing with each other for space.
Now, I’ve been saying that I don’t memorize details of programming languages that I can look up in 30 seconds on the Internet. Yes, I can do Perl programming, Javascript, Java, CSS, and many others. But don’t give me any off-the-cuff language quizzes. They’re stupid. Like Sherlock Holmes, I have emptied my mind of insignificant facts, in order to make room for the important ones. I can help you design great software, but language trivia is for newbies.
It seems Sherlock and I were right.
UPDATE: It seems Google has discovered, through measuring their job interviews, brain teasers and test scores are useless at determining whether someone will be a good developer. If you want to tell whether a prospective developer will write good code and fit in with your process—and if you want him to be able to tell, too—forget the traditional interview process. Forget sitting across a table from him and asking him to read and write code on a whiteboard. If you want to tell whether he’ll be a good developer and a good fit, spend an hour pair-programming with him.
-TimK
P.S. Actually, programming language trivia may not be stupid, because some old-time developers dedicate themselves to such things. But having wrapped themselves in the details, they tend to be weak on engineering concepts, especially new techniques to develop bigger software better and new practices to develop software faster and more reliably.