in reply to Use modules or roll your own?
The answer to this question depends greatly on the situation. You mention the Seeker was reading a Perl Textbook. The answer depends on why he or she was reading the text book. Was it to learn a new trick for work or school? Or was it to learn a required skill to complete a project that's due in 1 or 2 weeks? I used to be an advocate of reinventing the wheel, but I've backed off some (after reinventing the wheel where I shouldn't have). If the purpose in why you're reinventing the wheel is educational then go for it. After you reinvent the wheel, see what other people's version of the wheel looks like. Then try it again with new ideas that you've learned. It is a time consuming process but a good way to find the road to mastery. If, however, you're reinventing the wheel to use in production code, you have to be careful, very careful. If you insist at that point on reinventing the wheel then do it, but remember you have to pay your dues. If you factor in testing, testing, and more testing in your version of the wheel then it seems like reinventing the wheel may not be such a great idea (most people hate testing, but it is a crucial step in writing good code). But if there are not existing modules to use that fit your exact needs, you may have no choice. But if you do have a choice and a deadline in the near future, think twice before reinventing the wheel.