in reply to
"Rites of Passage" wheel reinventing
I have often built recursive-descent parsers for various projects, when Parse::RecDescent would have sufficed. I once built an entire XML parser out of pure perl, when expat was just laying about ready to be attached to a perl module. Fortunately Larry Wall had more sense than I.
My other major lossage was recreating a lot matrix algorithms before learning about the Perl Data Language PDL.
Moral: Always looks for a wheel first, even if you want to roll your own. It will always turn out better :)