Home > Programming > Can Perl ever regain its reputation?

Can Perl ever regain its reputation?

Pretty much anyone involved with the Perl community knows that we have an image problem. You don’t have to look far these days to find someone dismissing Perl as obsolete. For instance, this InfoQ interview with Tim Bray (Sun’s Director of Web Technologies) from a couple of months ago. In it, Bray says:

I moved from Perl to Ruby, because Ruby is more modern

It wasn’t always this way, of course. In the early boom days of the web (around ’96-’01), Perl was king. Exactly how this fall from grace occurred is a matter of some debate. Dave Sherohman recently said it wasn’t because of the “line noise” Perl is infamous for, but for poor support for casual users, allowing PHP to fill Perl’s web niche. I think it was also to do with the cowboy practices that the early Web hysteria brought on. Everyone was in a rush to become the next eBay or Amazon, and produced a lot of awful code in the process. The fact that it happened to be in Perl was not necessarily Perl’s fault.

Regardless of how this happened, we are where we are. The question now is: can we ever reverse the trend? We’re certainly trying harder than ever, but will our attempts be in vein? You would think technical people would be rationale and pragmatic, but it seems all humans are emotional and stubborn at the best of times. I’ve encountered good quality programmers who hate Perl with a passion (including ones that have actually done a reasonable amount of Perl themselves). Will these people ever be turned around?

Or perhaps the real question is: does it matter? Do we really care that some people will never like Perl, no matter how good it is? Why worry about something we can never change? After all, surely the truly smart people will recognise when something is genuinely good, and especially when it’s significantly better than anything else available. Maybe that’s Moose. Maybe that’s Perl 6 and Parrot. So long as enough people (outside the community) know about these things, sooner or later, reputation will stop mattering.

So can Perl ever regain its reputation? Probably, but lets stop worrying about it. 🙂

Categories: Programming Tags:
  1. james
    May 29, 2009 at 2:46 am

    Well part of the problem lies with entities like Google and your average library author not including Perl APIs/bindings for whatever reason (Perl is dead|executable line noise|waiting on perl 6|Guido works for them). It’s a combination of deliberate FUD and misinformation, uninformed developers and the massive hype machines powering Python and Ruby (on Rails) advocacy, also, Matt’s Script Archive.

    the problem with ignoring the false statements and ignorance about Perl is that “There’s nothing so absurd that if you repeat it often enough, people will believe it.”

    Sure we won’t reach those who have fixed their minds against Perl or who have a deliberate agenda, but we are really responding to enlighten those who might otherwise uncritically believe them.

    We should be correcting wrong statements about Perl where we see them and asking ‘Why Not?’ of Perl support for useful|popular APIs.

    In an ideal world, yes, the better technology would win, but we live in the world where Windows, Internet Explorer, MS Access and MySQL dominate.

    Technical or technological superiority provides no advantage.

    And I do think we can regain Perl’s reputation, at least in non-closed minded circles. It wasn’t that long ago that Perl was the glue of the internet, even if on internet time scales it seems like aeons.

    The Iron Man blogging initiative is a good idea, and even gaming indexes like TIOBE seems worthwhile (why should we be the white knights, the only ones playing fair in this situation?).

    • Mutant
      May 29, 2009 at 9:49 am

      I wasn’t trying to say we should ignore advocacy or marketing. The point I was trying to make (perhaps not particularly well) is that maybe we shouldn’t worry about Perl’s reputation in and of itself. Let’s just make Perl (and Moose, etc) good, and make sure it’s easy for others to see for *themselves* how good it is.

      I think that’s mostly what is happening with Ironman, etc. But I know that I (for one) find myself reacting to people who hate Perl, instead of just making sure those people have adequate access to the information they need to make an informed decision, and move on.

      • May 29, 2009 at 12:29 pm

        “Let’s just make Perl (and Moose, etc) good, and make sure it’s easy for others to see for *themselves* how good it is.” – I agree entirely.

        The lack of perl APIs for new functionality, for example, is a simply a symptom and will correct itself in time.

        Spreading the word about modern perl, and countering FUD with fact and example code, is a good way forward.

  2. Perl4Me
    May 29, 2009 at 5:20 pm

    Perl is an outstanding language. Of course we all know that. I love how easy it is to create, consume, and manipulate data structures. In my opinion, Perl’s ability to do that is unrivaled. Unfortunately, the cult of OO is strong. Don’t get me wrong, I like Moose a lot, but to me duck typing is the true strength of dynamic languages and should be embraced, not run from.

    The problem with Perl is not the language, it’s CPAN. It’s not the modules themselves, which are excellent in scope and quality. It’s that it is way too difficult to install modules successfully, especially in a non-root hosted environment.

    PHP is a crappy language, but it is simple as 1-2-3 to find an interesting project (like Symfony), to download it, untar it, and play. When you combine that with outstanding documentation for PHP projects, it’s quite clear which direction many people are going to go.

    If we could make Perl/CPAN this easy to use, then we wouldn’t be in the place where we are now.

    Ironman Perl is a great start though. Thank you Perl community!

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: