<br><br><div class="gmail_quote">On Tue, Jan 27, 2009 at 11:32 AM, Insurance Squared Inc. <span dir="ltr"><<a href="mailto:gcooke@insurancesquared.com">gcooke@insurancesquared.com</a>></span> wrote:<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
For example, the last time I hired a developer, I presented them with this:<br>
- you have a list of 100 items in a file.  how would you sort them in reverse alphabetical order.<br>
<br>
A number of folks I interviewed fumbled.  Some came up with huge, robust technically correct answers.  And the fellow we brought on board did a 10 line bubble sort.<br>
<br>
Give them say 5 minutes to do the quiz (you can do maybe 10 questions) and assure them there are no right answers.  You can then use the answers - and how they approached the answers - as a subject for further discussion.  The contrast in my above example was that all the other folks I interviewed were struggling for the pretty answer, the one that uses the least amount of CPU time and so on.  The other fellow explained that there was only 100 items in the list,so he'd have the bubble sort written in 5 minutes and job done - and it wouldn't make any real difference in terms of speed between having an elegant answer (except the elegant answer would take a lot longer to write than 5 minutes). For me, it was the correct 'business' answer.</blockquote>
<div><br>Nice assessment there and I agree. "Correctly crafted", "elegant" ...etc. are all nice, but getting the job done fast with minimal code is a virtue. More code is often worse than less code (think complexity, maintenance, ...etc.)<br>
<br>If I was looking for the ideal non-programmer candidate, it would be :<br><br>$ sort -r filename<br><br>Does the trick using existing tools. No new code needed.<br></div></div>-- <br>Khalid M. Baheyeldin<br><a href="http://2bits.com">2bits.com</a>, Inc.<br>
<a href="http://2bits.com">http://2bits.com</a><br>Drupal optimization, development, customization and consulting.<br>Simplicity is prerequisite for reliability. --  Edsger W.Dijkstra<br>Simplicity is the ultimate sophistication. --   Leonardo da Vinci<br>