{ by david linsin }

September 15, 2007

Fundamental Concepts of Computer Science

Coding Horror has a great blog post on various "computer science puzzles". Some of those are quite famous like the "The Towers of Hanoi" and as well as Jeff I can remember them from my first semester at university. I can remember that I tried to implement the "Eight Queens" problem in Java and as a complete newbie I totally blew it.

The most interesting part about the post is that Jeff thinks it's not useful to ask those puzzle questions in interviews for developer posts. Instead he claims it's more reasonable to let the potential programmer write some code in the real development environment.

I partially agree! I think it's not useful to have a developer solve those mathematical problems, especially under the special circumstances of an interview. At least when he has never heard of the problem. What I think would be useful though, is to let the interviewee describe the concept of a problem. For instance when describing the "Dining Philosophers" problem in computer science terms, I'd expect to hear keywords like concurrence, starvation or deadlock. If the potential developer mention those, in a correct manner of course, you know he will probably be able to map a real world concept to code.

To be honest, I only knew the "Eight Queen" and "Towers of Hanoi" problem of Coding Horror's "greatest hits" back from university. This blog post really got me excited about those puzzles again.



  • mail(dlinsin@gmail.com)
  • jabber(dlinsin@gmail.com)
  • skype(dlinsin)