I’ve been taking DDJ for a couple years now. It’s cheap and occasionally has something interesting in it, but it’s been less interesting than I remember it being when I read it in college. I’ve been much more enamored with the Communciations of the ACM. Today, I received my issue and there’s an interview with Paul Jansen of TIOBE Software. In the article, he’s quoted saying:
Another language that has had its day is Perl. It was once the standard language for every system administrator and build manager, but now everyone has been waiting on a new major release for more than seven years. That is considered far too long.
While I am biased, I have to admit that I disagree pretty strongly with Jansen’s assessment. First, let me go into the problems with how he came to this conclusion and then explain why I think I’m justified trusting that Perl is in it for the long haul despite my bias that would have me think so anyway.
I want to first evaluate the way Jansen has collected the data he’s used to make this statement. TIOBE puts together what they call the TIOBE Index. This is a rating of the popularity of various programming languages. The TIOBE web site claims, “The ratings are based on the number of skilled engineers world-wide, courses and third party vendors.” How do they measure this? By performing a search for:
+"<language> programming"
on 5 popular search engines, including: Google, Google Blogs, MSN, Yahoo!, and YouTube. That’s it.
What they are measuring is not actual popularity, but the amount of hype surrounding each one. Not only are they measuring hype, but only hype that discusses “programming”. What if everyone prefers to say “programming Perl is fun!” That wouldn’t get picked up by the search they use. What about “Perl scripting”? Nope. Missed. (Here I should point out that Andy Lester appears to have been on to something when he gave his lightning talk about Perl programs versus scripts at OSCON last year.) In essence, this is, if they’re disclosing the complete metric, incomplete. It’s a shortcut that might be 90% right or 50% right. This is just poor statistics.
The second aspect of Jansen’s comments I take issue with is the statement that there has not been a major release in seven years. That’s not strictly true. Perl 5.10 has just been released and it includes new features like the new smart match operator. Beyond that, there has been some very active development on a closely related project, Parrot, and language development toward a huge milestone, Perl 6. Furthermore, where Perl truly shines is in all the development on CPAN. CPAN is getting large and complex enough now that we’re having to rethink how it works just so we can find anything on it. This is a good problem to have.
This comment by Jansen does, however, serve to indicate a certain perception gap caused by the long wait for Perl 6. It’s even been considered that the name of Perl 6 is harmful to Perl 5. This has been discussed out by others for some time.
In my opinion, Jansen is on shaky ground with his claims and probably only because he’s not well informed by anything but his own metrics. I should think that he’d at least research the trends and issues facing the top 10 languages listed by his survey as to provide some better justification for it’s accuracy.
As for the reasons I still have warm and fuzzy feelings toward Perl’s future, I can list them off rather easily.
- I am participating in a number of growing projects that depend on Perl’s future. Jifty and rethinking-cpan are just a couple I’m involved in. I can point you to several other vital projects that I use or am familiar with.
- I know of several companies actively pursuing Perl to develop core projects and continuing to train developers. This includes imdb.com, Socialtext, Best Practical, Six Apart, and several others.
- Recently, Google launched Google App Engine. This tool provides services to Python developers as part of the initial release. The top most voted for issues are first to add support for Ruby and second to add support for Perl, as of this writing.
- There’s an average of 50 new and updated modules being posted to CPAN every day. That’s not a small number.
I can probably come up with more, but now it’s getting late, so I’d better end this thing. If Perl is going to die, it’s got some years left before it happens. I think there will be enough activity to keep it going and increasing during those years rather than dying.
Cheers.

There's more details of the vitality of perl and the perl community in http://blog.timbunce.org/2008/03/08/perl-myths/
Great article! Perl FTW.
PS: Can you please adjust the color scheme so that it doesn't cause an afterimage?
Now that I disabled style sheets and managed to read the post with my eyes still intact: no mention of Catalyst, but instead Jifty? How about http://catalystsites.org ? And http://catwiki.toeat.com/meta/tracpagestoport/liveapplications ?
As soon as you have to respond to 'myths' about the vitality of a community, or find yourself writing a long rebuttal to an assertion that something you're interested in is dying, it is a sign that you have something to admit to yourself.
Perl has no place in a modern engineering environment. We all see it, perhaps you will also with time but there is no hurry :)
I agree that Perl is not going away (so many old C gurus use perl and refuse to use another language), but I guess everyone would agree that there are serious contenders for newcomers to programming to choose another language than Perl (for various reasons).
Of course Ruby and Python come to mind first, and I think that the readability of programs is the main reason why Perl has a hard time competing against them. And while I agree that Perl is not going away, I disagree with anyone that recommends Perl claiming that it is _readable_ which is a claim which I believe is dishonest. (And I am not saying that perl is useless! I am just annoyed about claims issued such as the one on timbunce.org that perl is NOT hard to read ...)
Everyone whose favorite language is lower than they think it should be objects to the Tiobe methodology. However, the general patterns are by and large correct.
You can attack his methods all you want, but the real proof would really be some evidence that Perl usage is obtaining net growth. Which you don't seem to have. (Not a critique, just there isn't much either for or against.)
I don't use Perl and don't have a strong feeling one way or the other about it, but I can say this--five years ago most of my colleagues were showing me neat things they could do or had done in Perl. Perl was a frequent word in conversations. That is definitely not the case anymore. That's just one data point, but it certainly fits with what Tiobe indicates. Right now, the language that takes the role that Perl used to have is Ruby. (I don't use Ruby either.) And sure enough, Ruby is climbing on Tiobe. You call it buzz, I call actual use. Neither of us has proof. But at least Tiobe is making an effort to measure it *and* they've been fine-tuning it for years. It's much more involved than the simple grep you mention.
Unless you have data you're not sharing, I think their analysis is fairly good. Sorry it doesn't support your fave language, but I think Tiobe is probably right about Perl.
While you may not agree with the methods TIOBE uses, it isn't bias. All languages recieve the same treatment! As you noted, it isn't wholly accurate, but it is useful.
What the TIOBE index provides is a simple way of tracking languages over time. You can observe a languages growth or decline since 2001, and how it related to other languages up to now.
The Data Set Is Self Referential.
You should also acknowledge that TIOBE sell their full statistics, so what we see is not what Paul Jansen sees are quite different. They're obviously quite different.
While I do agree that perl wont go anywhere for the foreseeable future it is certainly on the decline overall. Hype is very important :(.
Sorry you don't approve of my color scheme. :-p
Catalyst Framework would certainly be one of my other recommendations. I was focusing on what I use.
If Lofi is correct that responding to myths is a sign of something you need to admit to your self, then I'd like Lofi to also explain these articles on the myths about other languages listed by TIOBE:
I think you've been just a little smug in your response.
I also recommend Tim Bunce's further look into the statistics, including his results searching the sources TIOBE uses to build their statistics:
http://blog.timbunce.org/2008/04/12/tiobe-or-not-tiobe-lies-damned-lies-and-statistics/
COBOL has stuck around for a long time, as has TCL. There were times when these languages were best of breed -- now they have a clear niche. The same is true of Perl. Although it is not dying, Perl has had its day in the sun.
And that's okay for Perl programmers -- if they know how to do their jobs well, they can do them in Python and Ruby as well as Perl. Instead of holding on to Perl, maybe it's time for an intelligent diaspora?
"Which you don't seem to have. (Not a critique, just there isn't much either for or against.)"
There is still no evidence of decline or even plateuing of perl usage, deployment or programmers.
In fact there is a lot of evidence for continued growth. Some languages may be growing faster, but it's relatively easy to grow from say 0 books to 3, or 200 packages to 1000, or even 10 jobs to 75, and still be growing little faster (or even slower) than perl. For example :
http://www.jobstats.co.uk/jobstats.d/Details.d/Trends.d/SKILL/PERL.d/index.html
vs
http://www.jobstats.co.uk/jobstats.d/Details.d/Trends.d/SKILL/PYTHON.d/index.html
See how volatility of the jobs market means that python jobs actually dropped by 5% since the same time last year, and even with a nasty drop since last year python jobs are less than a quarter of the number of perl jobs - seasonal changes to the perl job market are bigger than the entire python job market.
Then lets look at Ohloh - it's much more popular in Python circles than perl ones, yet Perl is still larger and growing faster in real numbers than python :
http://www.ohloh.net/languages/9
vs
http://www.ohloh.net/languages/8
CPAN is still growing and improving faster than any all of the ruby, python and php repostitories combined.
I'm still working with people learning perl both on open source and professional scenarios.
In summary, perl is growing, it will still be at least 5 years before python could even come close to the number of jobs, applications, resources, projects, books (published or sold) or users.
Perl rocks! After having used other languages including PHP, Python and Ruby, I see that Perl is still the BEST in terms of performance, elegance, speed and efficiency!!
~arul
I like Perl because it is backward compatible where PHP isn't.
While more complicated, in that you can have it do the same thing a dozen or so different ways, that very flexibility is Perl's appeal.
More people seem to follow hype and miss the mark of something which has extablished itself over time and has a proven track record (and doesn't change it's version every 6 months or so - it has no need to).
I love Perl. It's still the language I pick when I want to get something done quickly. BUT, I gave up waiting for the mythical Perl 6 a couple years ago. I have work to do NOW and, more and more, I'm finding Ruby gets it done.
Consequently, Perl 6 is already dead to me.
I picked up Perl about a year ago. WoW! It was a godsend. I've put together a couple of dynamic websites and saved a company several hundred thousand $$$$ in the process. I could have used Java or Ajax or any number of other languages, of course I would have had to learn them too. It just wouldn't have happened near as fast as Perl did. CPAN is a great resource!
What a great tool!
One thing to realize about perl 5 is that is has heavy competition.
It is not dying, but with a lot more competition EVERYTHING will be harder (for every language too).
And we all have to understand that people will pick languages because of certain strengths.
Btw java is no alternative to perl here. Alternatives are only other scripting languages like php python ruby.
I am biased as well. I am writing mostly Ruby these days.
The worst language out there is still php, but we ALL have to ask why php was a success - and unfortunately still is. ;)
Markus is right. PHP is the most popular language these days even though Python and Ruby are in active development stage.
The reasons are:
1) Inertia to move to Python and Ruby
2) Speed
3) ORM's for PHP like Doctrine, Propel available
4) Code Igniter is a good framework for medium sized projects. Learning curve is small.
5) Ease of learning
6) Good OOP concepts from PHP5
7) Free accelarators
8) Free Load balancers
9) MIT license
10) Stat, Math modules available (though Scipy is the best)
11) More modules coming up
12) GD support moved to PHP camp
the list goes on....
Love,
Sam
Honestly I got a bit disappointed when I saw the last Tiobe "Language of the year 2009" given to the "Google Go" that is quite new in the development field.
I can't believe that people are already trying to use it as a professional working instrument feeding forums, blog articles, consistent software projects.
The "Google Go Language" appeared in the Tiobe list for the first time only for the January 2010.