CPAN Motivation
As you might guess, the rate of new Perl archives, and separate, distinct locations (we didn't have URLs back then) for a given work, grew rapidly. It became difficult to keep track of where this or that tool or script was located, and whether it was of any use. The most important tools which made it to the comp.sources newsgroups were generally well maintained, and available at multiple locations, but other things were quite unique. Some archives specialized in database access tools, others in documentation, and others in source code for Perl and the various ports. A unification was necessary, in order to make it simpler and more intuitive for the average newbie Perl user to get what he/she needed to implement his/her task, without reinventing the wheel.
So, due primarily to the efforts of a few tireless "Perl Packrats," including Jarkko Hietaniemi of Finland, the process of mirroring all of the existing hierarchies into a single hierarchy was set into place.
Nowadays, the CPAN is much more than simply a collection of scripts, documents, source, and miscellaneous tools and packages. It's become the de facto location for all Perl modules, and extensions, ports, patches, source code, and every other thing. There is also a dynamic, ongoing process attempting to make it easy to navigate, and relatively easy to contribute to, if you ever wish to make something you've written available on the Net.
The most important thing that the CPAN gives us is the ability to re-use code, and save effort. This lends to one of the true and fine qualities of any good Perl programmer: laziness. :-) We encourage you to explore the CPAN, and make use of it often.