http://qs321.pair.com?node_id=114715

I have worked in several companies in my day, and I am sure that many people will share my laments here. There are two kinds of companies out there in the world making use of Perl. One set is who I would call "the right ones" such as eToys, TicketMaster.com. The reason these places are right is that they don't see Perl as just the language, but as a culture of contributing people all encountering similar problems and working towards similar solutions. Ticketmaster.com recently did a "buy a damian" thing on Stas Bekman, employing him to work fulltime on mod_perl development. In this way, Ticketmaster.com is spending money upfront to ensure that a technology that they rely on will be around and top of the line.

The wrong way to use Perl is to see it as a "free language" and then run off and write a bunch of unreleased code. Most of this code however, is doing nothing but what CPAN modules do : application configuration AppConfig could've done it for them, templating (take your pick), database connections DBI + the whole gang of application layers on it, regression suites (yes, there are places that don't use Perl's builtin Test and instead use homegrown things that are less capable.... aaaaaahhhh!.

The reason this is bad use of Perl is that most people are running into the same problem and you are just reinventing the wheel. The second reason it is bad is that incoming contractors (moi) have to get up to speed with Yet Another Version of something Widely Used and Loved on CPAN. The final reason is that your test suite only get's hammered under certain conditions. And also check this out: A specific application should be an instantiation of a collection of generically useful modules. And if it isn't then you can be sure that it will not scale well And finally, just look at all the free documentation you get!

This post is what I want to say to my boss' boss, but I would be talking to a brick wall to do so. I meant to write it 2 weeks ago, but I said "ah, forget it" but my effectiveness at my job continues to dwindle and largely for this reason.

Oh and the title of this post? It just means that Perl is like a tree. It has roots. stem, branches, and leaves. To only take the Perl language and leave the rest is like having a stump in the ground as opposed to a 500 foot redwood sequoia.