scrottie wrote in a recent use.perl post that:
[..] the only reason companies hire Perl programmers to write non-trivial programmers beyond the scope of system administration automation is because Perl programmers are inexpensive and submissive. They do what they're told, don't talk back, don't require acknowledgement, don't make a stink about things like testing and security that management doesn't care about nearly as much as deadlines, they don't aggressively negotiate on their salary, they agree to absurd timetables and requirements, and they routine suspend their better judgment to attempt whatever management has proposed.
[..]
[..] Writing a thousand times more Perl than Java in the past few years, I'm still more marketable as a Java programmer to a degree that far exceeds the relative demands for Perl or Java programmers. Only fundamental attitudes can account for this.
Reading this along with Iftekhar's suggestion that Perl is perceived as (cheap) glue in the programming market and what renodino wrote way back in 2006 about low wages for Perl jobs got me thinking about Perl's perception in the marketplace, and I think I might've had it wrong all along.
Those of us extolling Perl's virtues on geek websites like Slashdot or Reddit constantly face get the age-old refrains - read-only programming, not sophisticated enough (compared to functional programming languages, for instance), far too sophisticated (compared to Java, for instance), primitive OO facilities, a list a mile long. On pro-Perl websites and blogs, this turns to nervous fretting about our core strengths: TIMTOWTDI, but how many WTDI should there be; we have to change our syntax, we must keep our syntax consistent; we need proper OO systems, we need to stick with the überpowerful bless system. Many of these suggestions are important, and all the discussions definitely are, but I wonder if they might be hiding the larger issue, rather like the whole "I hate enforced leading whitespace" tends to overshadow other benefits and downsides of Python.
So I've always assumed that it's a feature fight we're losing - we can't give new users a simple OO system, or "class" keywords, or any of the other features people want to see included in Perl core. But let's pull back a second - we've got a language with Ruby's regular expressions, proper closures, Python's terseness and conciseness, a powerful and flexible module system, and a wealth of brilliant features hidden away for when they're needed - AUTOLOAD, heredocs, quote-like operators, sigils (!), and separate operators for strings and numbers (seriously, how brilliant is that? That might be my favourite Perl feature ever.). Forget about CPAN and the Perl testing culture and the community, and we still have something which is plenty useful, incredibly exciting, reasonably cutting edge and ridiculously lovely. Why, then, are we looked down upon?
I have some ideas, but they're far more ridiculous than anything I've proposed here, so I'll stop here for now. Please give me any feedback, suggestions or corrections!