Just as a jigsaw puzzle needs a box, a solution needs the thing that will focus and guide it to success.
The box in which a jigsaw puzzle comes packaged is an extremely important part of the puzzle, as the box typically contains an image of what the puzzle will look like when successfully connected together.
In other words, when you start a jigsaw puzzle, you know the problem you're trying to solve.
Would you ever attempt to solve a jigsaw puzzle without knowing what you were working toward? Probably not if you hold your sanity in high esteem.
Or, consider another type of puzzle. What if I gave you a 9x9 grid of squares where some squares had a number in them and some didn't? Would you know what to do? Perhaps you'd start entering numbers as if it were a Sudoku puzzle. But what if it weren't? If you didn't know the rules, how could you solve the puzzle?
Extending examples like these to any part of life, why would you attempt to solve a problem without fully understanding what the problem is?
Creating solutions without understanding the problem happens regularly in my industry. Clients say something like, "I need a new website," when they may not really know why. They may just feel it's outdated or doesn't bring in enough traffic, but is that a good enough reason for them to pay someone else to build them a new site?
Whenever my team starts a new website project, we spend time with the client. We interview their employees all about their jobs -- their struggles, their successes, what they like best about their company. As we wrap the interviews, we transform the information we gleaned from them into a comprehensive problem statement which will inform and guide the rest of our work.
Preparing in any way less than that would be guesswork on our part, which would likely result in a solution that doesn't solve the client's problems.
For you, in anything you do, you should spend time learning about the problem up front. That will help you work to solve a problem that needs to be solved, ensuring you spend your time as valuably as possible.
A puzzle without a box is a solution without a problem -- it's an unguided exploration in frustration and futility. First, build your box -- only then will you be able to solve your problem effectively.
While technical tools make developers' lives easier, we can't forget that non-technical things can have a big impact on devs' productivity and satisfaction.
It's important to revisit the learning process every once in awhile. It strengthens the core of your abilities and can help prevent you from getting stuck going through the motions.
Using research on trees to learn to ask for help and appreciate those who have helped you.