There is a disussion of the similar issue in Modules, Frameworks, and Reinventing the Wheel
. I've found myself in similar situations where some subtle points of a module (or a built-in function, for that matter) are only discovered after my long struggle. Many modules (and other open source projects) are so well-written that one can get one up and running in no time. The sublties/limitations will take some time to surface. There probably isn't any real solution. After all, the authors wrote those modules to solve their problems, which are rarely exactly our problems. On the positive side, that's why we still have a job.