Daniel Martin wrote:

> The point is, yes, maintainability is important, but I really don't
> understand the animosity towards "cleverness" that seems to be showing
> up here.  That sounds to me dangerously close to the same attitude
> that keeps ruby and many other non-mainstream languages out of many
> production environments on the grounds that "we'll never be able to
> find anyone to maintain it".
> 

I suppose I should clarify what I mean by cleverness. I distinguish 
between "clever" code and elegant code. Code that might be considered 
clever but is in good taste I would term elegant. Golfing, fancy bit 
manipulation by C programmers where the compiler would take care of it 
anyway, etc. I term clever with a derogatory tone. The choice of terms 
is almost entirely arbitrary. The point is that, as you said, in a job 
interview what you want is a straightforward test of ability, not to 
assess for on-the-spot puzzle solving ability.

> Also, as a practical matter, I haven't seen this "cleverness" in any
> of the subsequent interviews I've conducted from the other side of the
> desk.  Frankly, I'd love some evidence that incoming candidates had
> been exposed to something other than the industry standard languages
> and platforms.  Exposure to functional programming and the thought
> patterns that go with it is a *good* thing.  Being able to look at a
> problem from multiple angles is a *good* thing.  Mental agility?
> We're supposed to like that in a candidate.

Ya, that'd be elegant. :-)