Perl and self flagellation...
What's wrong with Perl 5. Nothing. What's wrong with non-"Modern Perl"? Nothing.
I get the impression from the Perl community sometimes that if you aren't using Moose you're not a real Perl programmer. The notion of Modern Perl to me is a bit amusing.
While I am in agreement with all of the attempts to create best practices and standardization around Perl programming and protect programmers from themselves SOMETIMES, it's a bit of an oxymoron to use standardization (of programming techniques anyway) with Perl. After all, the language that embraces the TIMTOWTDI mantra can hardly throw devotees out of the tent that don't want anything to do with heavyweight additions to their favorite language.
More power to all the Moose developers and it's great that you can create a framework (in Perl) that morphs Perl into...something unrecognizable at times that folks find useful, but here's my point.
Are C programmers lamenting the fact that their language has been left behind on the dust bin of history? Nope. Last I heard, C still has an important role and plenty of highly competent people using it to solve problems. Not EVERY problem, but lot's of problems.
Seems to me that Perl 5 should be embraced in a similar way. It solves a lot of problems. Maybe not every problem. Perhaps a huge project that requires that all developers be put in straight jackets and live within a constrained, highly protective environment is just not a good fit for Perl and one should look at languages that are designed for that use case rather than morphing Perl into Java or the next OO...fill in the blank with a pithy name...language.
My first car was a 1969 Red VW Beetle. The heater was busted and perpetually on. The heat came out of a vent in the floor and burned my feet. I had to stuff a big tube sock in the vent. I put in a quart of oil at every fill up too. One day I saw a VW on the road and saw that someone had smacked a Rolls Royce grill on the front. Wow! Cool! Then it hit me. Why not just buy a Rolls Royce?
As a manager of Perl developers in a relatively small Perl shop (~12 developers) I loathe the guy that sneaks Object::InsideOut into a project to write a 400 line Perl script that essentially updates a database. I have no patience for programmers that want to show the world how smart they are while creating code that only they can maintain. It would be great if God created all programmers with the aptitude of the folks on these blogs, but as a hiring manager, I can tell you there are more folks that struggle with POP5 (plain old Perl 5) than there are Moose/Mouse/Moo-men (sorry persons).
Before I'm burned at the stake by Moose-folk defending their territory, let me reiterate I applaud the effort to see how far you can stretch Perl. While I don't find that morphing Perl into Modern Perl makes sense (to me) and would never pay the penalty associated that always follows when you try to bang a square peg into a round hole, I don't have to. I can still use POP5 and feel good about it.
So, rather than continuing to walk in circles in a self-flagellating ritual reminiscent of Monty Python and the Holy Grail, why not just take Stuart Smalley's approach and let's all just do a daily affirmation.
"I'm a Perl 5 programmer and I'm good enough, I'm smart enough, and gosh darn it people like me!"
Perl 5 has a place solving problems, just as C does. If I want a Rolls Royce, I'll buy a Rolls Royce.