So, there's a single distinctly good reason to use modules that have already been written: they're already written, which means you don't have to write them. That saves time off your schedule from blank file to completed product. However, in the Perl world at least, it feels that there's reason to assume this may not always be the best course of action.
I'm actively considering writing (and somewhat [working on][plmodel]) a database for library along the lines of [Sequel][sequel]. I've looked at [RoseDB][rosedb] and [DBIx][dbix] and neither really seemed to match the It Just Works simplicity of Sequel for basic ad-hoc querying/runtime object construction, nor the flexibility and power of building more complex queries without advanced SQL knowledge. Your mileage will vary on whether you feel building complex queries entirely in Perl should be necessary, some will say you should just write raw SQL if it's that necessary, and that's a valid point but not one I'll be discussing.
Database libraries are, ho