In engineering practice and in research (and in everyday life of course also) there are problems. What is better - immediately solve the problem or leave it "mature"?
Dear Josef Punčochář, Its just depends on our mental stability. Nothing is good or bad, thinking makes so. So from my points of view, ask to yourself, Can I do it immediately?? If possible then do, otherwise to wait. In engineering experiment sometime it is better to wait as the reaction is time dependent. (Eg- Nano particle suspension)
First step is understanding the problem's root cause, otherwise your "solution" can only be a workaroud.
Then as next step, try to find a solution tho the root cause. Almost always the understanding of the problem grows considerably while working out the solution.
Then after implementing the solution, you will notice new problems, which were hidden behind the first problem.
Only few problems are mono-causal and solvable with a simple solution. Often enough, we mistake correlations for causality...
It's important to get a clear picture of the problem. It's fundamental as first step to identify the root cause and as second one to try to find the solution/s related to the root cause. To do that, we could consider (1) the logical path/method - by taking into account the most obvious solutions/considerations - or (2) the lateral thinking approach - by taking into consideration alternative points of view before looking for the solution (https://en.wikipedia.org/wiki/Lateral_thinking). From my experience, which methods to use it depends on the kind of the problem and on the context/environment where practical solutions are needed. These my considerations are related to the mere technical/engineering standpoint. At the same time, we have to cope with other persons/colleagues so with different attitudes and understanding. That's is another story.