http://www.perlmonks.org?node_id=408496


in reply to The Limitations of the CPAN

I agree with most of what you're saying, but I'm going to quibble with one thing.

Perl is fantastic, but if you want it to scale, you really need a stronger than average programmer and those can be tough to find . . . Most Perl programmers, in fact, are decidedly not qualified to work on those systems due to the dangers inherent in them. That's why Java has been so successful. Sally Admin may not be qualified to work on the Java system either, but, as she learns, she's less likely to wreak havoc on the system.

I'm not going to disagree with the statement, as it stands. However, I am going to vehemently disagree with the underlying sentiment. I hear it a lot, and it's so patently false it hurts.

If you want an enterprise-level system written in any language, you need a "stronger than average" programmer in that language, and those are always hard to find. Maintaining said system, in any language, takes an average programmer. Extending said system, in any language, takes a "stronger than average" programmer. There are no ifs, ands, or buts.

This problem has been more readily identified with Perl moreso than Java for two reasons, both of which are Perl's fault.

  1. Perl is more accessible to the below-average programmer. This has lead many to think that Perl is designed for the below-average programmer, and isn't suitable for anything heavier.
  2. Standards. Java has them, Perl doesn't. This means that you can take the average Java consultant off the street, plug them into your app, and you will not notice that the consultant is wrecking your system until they're gone. It's much harder to do the same with the average Perl consultant.
Now, I agree with the reasons behind both those issues, but they are still issues resulting in poor perception. But, it's just perception. The issues in building an enteprise-class application have nothing to do with the language used - they have to do with enterprise-class things. A top-notch COBOL programmer can build an enterprise-class application where an average Java developer will fail. Yet, why isn't COBOL the enterprise-class language of choice anymore?

The point here is that Perl is no more and no less suited to enterprise-class work than any other language. The skills needed to build an enterprise-class application are not language specific. Please stop promulgating that mismeme.

Being right, does not endow the right to be rude; politeness costs nothing.
Being unknowing, is not the same as being stupid.
Expressing a contrary opinion, whether to the individual or the group, is more often a sign of deeper thought than of cantankerous belligerence.
Do not mistake your goals as the only goals; your opinion as the only opinion; your confidence as correctness. Saying you know better is not the same as explaining you know better.