Why I wrote my own module. It had nothing to do (really) with management decisions about purchasing, etc. It was simply easier to customize what we needed instead of going out and searching for different modules to do what I needed. I could customize the functionality to our needs and environment(s). Also, some of what we needed was simply not available in modules because essentially the routines that I have written are wrappers for external programs. I also wrapping regular modules into a routine so that I and my co-workers can quickly plug that routine into our boiler-plate code and run it without having to dig into what a module needs because my two co-workers are not as proficient with Perl as I am (although the training in that area is preceeding nicely). Those routines also cover several work-arounds that I have needed to put into place to make our job easier since it is not all that easy for me to install modules that I do need (although I have convinced one the Unix admin team leader that we need to be on the latest version of Perl when we upgrade the system we are using).
Just my 2 bits. :-)
"Ex libris un peut de tout"