You're really saying you don't want to work with people who:
1. Don't know the volume of a golf ball
2. Don't know the volume of a bus
3. Don't know the amount of a bus's volume taken up by seats and other protrusions
I think that's a little silly. I strongly doubt a single one of those will make you a better programmer. Likewise, problem 1 is a physics problem. If you're applying for a job programming physics simulations or video game engines, it could be relevant, but otherwise I don't see how knowing the physics of water would be helpful in the day-to-day experience of programming.
I see how the underlying skills of solving the problems could be helpful, but in practice it seems like brainteasers tend to be more trivia than problem-solving.
You are not tested on your ability to remember the golf ball diameter or equation to calculate how many spheres of diameter d can fit in cube c.
You are expected to demonstrate you can roll the concept around in your mind and make progress toward answering the problem. When you do interviews you'll find people who literally can't think to save their own lives. Their minds have atrophied to the point that the only way they can solve a problem is to have their hands held by a competent person and told "now i need you to find the volume of a gold ball", at which point they would have to be instructed how to do even that.
There are some idiots out there who have brains that have gone into coasting mode. No new learning, no new problems, everything they learned up till this point is the only thing they are capable of. You want to weed these people out quick. This question does that wonderfully. The incorrect answer is "ummm. I donno, and i don't know how to start.... Hold me".
1. Don't know the volume of a golf ball
2. Don't know the volume of a bus
3. Don't know the amount of a bus's volume taken up by seats and other protrusions
I think that's a little silly. I strongly doubt a single one of those will make you a better programmer. Likewise, problem 1 is a physics problem. If you're applying for a job programming physics simulations or video game engines, it could be relevant, but otherwise I don't see how knowing the physics of water would be helpful in the day-to-day experience of programming.
I see how the underlying skills of solving the problems could be helpful, but in practice it seems like brainteasers tend to be more trivia than problem-solving.