Finding the Right Module for the Job
With over 4,000 available modules, there's no way that anyone can know what each and every single module does. In my opinion, many developers often resort to writing custom modules too quickly without doing their due diligence in looking for an existing module to accomplish the same task.
When I'm working on a site that I think might require a custom module, there's a few steps I take before I break open my code editor (currently Espresso).