Hacker News new | ask | show | jobs
by dkarl 1071 days ago
> - real life is not about solving puzzles. Real life is a rigged game where rules are not enforced. Instead of finding problems to solve, you need to find oportunities (and loopholes) and exploit them!

"Real life puzzles" are too open-ended and have too many levels to really be called puzzles. A puzzle has a closed set of rules that usually gives you only one level on which to solve the problem. Many interview questions could be described as puzzles. A "real life" programming task has a bunch of different levels: what's the real problem the customer wants solved, is this the problem this customer wants solved first, do we have a bigger customer with a bigger problem you should be working on instead, can the problem be solved without programming, should the problem be solved in a different system, are there other people on the team who solve problems like this in their sleep and they'll give you the answer in five minutes if you describe it on Slack? If it does seem like you need to solve the problem, what's your level of confidence that with investment of X time you can solve the problem, for different values of X, and given this information, does it still make sense to try to solve it?

What makes puzzles relaxing and reassuring is knowing that there is a solution, and that you know all the rules. Also, you know that you'll recognize the solution when you get it. Real life rarely gives you that reassurance. With a real-life problem, you don't know if there's a solution, and even when you have one, you can't know that there wasn't another solution that would have been much better, because of possibilities you failed to consider. The only way to turn a real-life problem into a "puzzle" is to strip away the open-ended real-world context and present a subset of it that can be described in a closed form.