|Problems? Is your data what you think it is?|
Hear, hear! ++!!
I would like to make a subtle distinction between reinventing square wheels and reinventing almost-round wheels. For example, a huge number of posts in SOPW are from people who are trying to duplicate CGI.pm or similarly exhaustively-tested modules. Don't reinvent those wheels unless you have to!
Instead, be intelligent about what it is you're using. Don't blindly use something just because it's there. Instead, if you're going to put something in your application, be selective! Be elitist! Just because everyone else is using it isn't a good enough reason.
I use CGI.pm in my production code because it's good, not cause everyone else says to. I would try it out in a development area because people on PM say to, but I wouldn't immediately throw it into production.
You should use that logic with everything you didn't personally write or have a hand in designing. Don't be a lemming!
Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.