Here is a small example of my experience with that issue:
I started to write code to initialize Java Objects out of an XML File.
After a while one of my colleagues showed me Apache Commons Digester, which was the solution for my needs.
How do you guys identify useful Projects/Plugins etc for your Project.
For example:
Google,Ask on StackOverflow for something fitting?
Research is always Time Consuming and we all know that the customer wants to see results as fast as possible…some hints?
This is something you do with experience. Reading books, blogs articles help you have a firm idea of what tools and libraries are available. When you are involved with projects that actually use them you gain a first hand experience of them and add them to your arsenal for future projects. The experience gained also helps with new stuff you are not familiar with, since it helps you to understand what to expect from a library/tool and how to go on with the integration.
I believe that is more important to work on building up your experience, since this not only helps for identifying the right tool, but also with the architectural design and with the integration to the whole project. When it comes to finding a suitable tool for a specific need, I would say “trust your instinct”. You should ask yourself the question: “Is that what I am looking for common enough that someone else would have gone creating before?” With even a medium-sized experience you should be able to answer this question correctly. If the answer is yes, then you can start googling. Typing the right keywords help. Don’t settle for the first thing you find – try to find alternatives. And always do extensive research before integrating a new tool/library to a project.