General: Problem solving in companies
I hope I can explain my question correctly. How do professionals work when they program something from scratch or work on a hard problem? When I (re)write a program from the scratch, or work on a serious problem, sometimes a break helps me a lot. It sounds strange, I try very hard, but when I do something else (walk, sleep from 11.30 pm to 5.30 am, go shopping, or have a coffee with my wife), I suddenly have an idea, or just a new approach. But I only program privately. What do you do in a company when you have to program 8 hours (or even more)? You can't say: I have to have a relaxed coffee with my wife. Don't get me wrong, that's not laziness. I absolutely want to solve it. But... sometimes absolute concentration on a problem doesn't help anymore. Before the break I sat on the problem for at least 2 to 3 hours. How do you do it, if you are paid for coding in a company?