

Mastermind Codebreaker Challenge - apetresc
http://mastermind.rubikloud.com/

======
apetresc
This was intended as a sort of fun screening puzzle for my company at an
upcoming career fair, but I figured the HN crowd might get a kick out of this
type of puzzle too.

~~~
fsk
First, this is a solved problem.

[http://en.wikipedia.org/wiki/Mastermind_%28board_game%29](http://en.wikipedia.org/wiki/Mastermind_%28board_game%29)

tl;dr answer: Check every possible move. For each possible move, each possible
response partitions the remaining guesses. Find the move that, with the worst
possible response, has the fewest possible remaining guesses. That is an
almost-optimal greedy algorithm.

Second, as a senior candidate I now pass on pre-interview screening tests and
assignments. I'm not spending a couple hours doing your challenge for the
chance of MAYBE getting an interview. A pre-interview test only works for a
recent grad or someone who's desperate.

Who are you and why is your job so special, that I should invest several hours
of time for the chance of maybe speaking with you?

~~~
kjaslkjasidoq
Pretty much this.

Recent grads aside, screening is stupid and hipster edgy "only the best"
companies tend to do this kind of stuff. Unless the company legitimately does
cutting edge work (quant trading firm, Google, etc) there's is absolutely no
need for this.

On topic though, the problem is an interesting exercise in AI. Could be fun.

~~~
beagle3
From experience - there is absolute need for this.

People often lie on their resumes. A while ago when I was hiring, I would
throw 90% of the resumes I got because they weren't what I was looking for
(one way or the other), but of the 10% that were left, many were simply lies -
I didn't keep stats, but phone screens weeded out most of the fakes, though
some slipped through and were only weeded in person.

People who say "screening is unneeded" have never likely tried to hire, or
have access to a pool of honest-resume talent that most of us do not (which I
find highly unlikely).

~~~
fsk
But it also looks awful from the viewpoint of the competent candidate who
already has a job. Everyone wants you to spend 1-10 hours doing THEIR pre-
screening test, before you even meet them or talk with them. I don't have the
free time to do all of them.

Also, giving me a pre-screening test is insulting and shows you didn't read my
resume. Based on my education, various honors, and experience, wouldn't it be
at least worth your while to talk with me before making me take your stupid
test?

~~~
beagle3
> Everyone wants you to spend 1-10 hours doing THEIR pre-screening test,
> before you even meet them or talk with them. I don't have the free time to
> do all of them.

And you shouldn't. Or at least, you should do them prioritized in the order of
where you want to work.

> Based on my education, various honors, and experience, wouldn't it be at
> least worth your while to talk with me before making me take your stupid
> test?

Unfortunately, a significant percentage of resumes are inaccurate (to put it
lightly; "outright lies" is a better description), so you might have equally
asked "Based on the color of my eyes, wouldn't it ...."

Pre-screening is better for everyone. If you came to my office for an
interview, or if I interviewed you by phone, I would do something that would
(should) take comparable amount of time. Wouldn't you like to save the
commute?

Personally, I try to hire by reference-from-someone-I-know rather than
blindly. It is about 100 times more effective (in time spent; I don't think
I'm exaggerating).

