Let’s see some data.
Are people interested in it or using it – measured by google search trends:
How about the newest Perl 6? (By the way: do people use Perl 6 in real, big projects? Please post examples in comments 🙂 )
Not good either…
Perhaps all those people dumped Perl and started using PHP and Python…
WTF? They did not. PHP is declining too!
Python is on one level, rising just slightly. Going head to head with Ruby.
BTW: interesting article here about Perl and Python – but Python did nor rise as much as the author expected.
Let’s look closer:
Yes, Angular rising a little, but come on, it is still nothing compared to JS, Python etc.
So maybe we’ll look at job trends?
Well… Perl going down fastest, but PHP and JS nearly as fast. Ruby is on the same level, after some ups and downs, and Python… rises.
If everything (except Python) goes down – what goes up? What language will be most popular in next years? Go? C-something, Swift? CoffeeScript or another JS-something? Please post your thoughts in comments.
Remember when I wrote about Perl, Python and PHP taking bigger part in corporate world? Here is nice analysis that shows that PHP growth in this one particular job ads service is not linked to the growing search for “multilingual” developers (java or .net or C#, VB, ASP – and PHP) but for PHP-focused developers.
Other interesting thing is that the jaw-dropping chart shown in the “crashing the enterprise party.” article shows growth of given language job ads, not absolute number. See absolute number for opening your eyes 🙂
See, that absolute numbers show that Perl is higher than PHP and Python, although PHP and Pyhon are rising, while Perl is on one level.
If we compare languages by number of jobs offers, and take into account just one site with job offers, we may think that:
Perl as good as java, python and PHP are way above
Until now, java and .NET seemed to be the most popular in corporate world. Now is time for Python, PHP, Perl, and open source solutions. For example Farmville, very popular online game, with million of users, is said to run on LAMP stack.
There is also opinion that companies like Zend or ActiveState give “corporate face” to open source. And yes, open source is not free (as free beer) – you often have to (or are willing to) pay for support, knowledge, contractors etc. (vide MySQL Enterprise).
But, returning to the title of this post – on the graph in cnet article– you can see that there is the same amout of job offers for java and perl developers, some more for .NET, much much more and rising for PHP and even more (and rising more) for python.
Well, the perl 5.10.1 was released some time ago. It includes some nice features and some strange features.
I’m osting it in “future” category, as I do not intend to use it now. Neither 5.10. Why? It is being changed, and I like language I develop in to be more constant 🙂
- bug-fixes, optimisations, tuning. Runs faster.
- autodie pragma 🙂
- “..” operator is interpretedin boolean context when used inside a when statement – yet another WTF. So, the behaviour of “..” is not less consistent. On the other hand it may be usefull.
- Change of smart match behavior in comaprison to 5.10
- better encapsulation
- ordering matters – $key ~~ %hash is OK, while %hash ~~ $key is not.
- distributive – applies itself recursively across data structures. Isn’t it getting too smart? And too complex to understand in real code? And too WTFish? I’ll quote the fragment of perl tips newsletter from http://perltraining.com.au/
following expression is *true* when evaluated under 5.10.1, but *false*
‘bar’ ~~ [ ‘foo’, [ ‘bar’, ‘baz’ ], ‘qux’ ]
In the same vein, given the following code:
[ ‘foo’, ‘bar’, ‘baz’ ] ~~ \&subroutine
Perl 5.10.1 will call the subroutine *three* times (once for each
element), and the whole expression will be considered true if *all* the
results are true. On the other hand, Perl 5.10.0 would call the
subroutine only once, passing in the whole data structure.
My wife asked me: why did you choose perl? I told her that it is easy and robust, allows quick development, effective writing scripts that will be used just one time etc. To back it, I gave a few examples: when you want to sort, you just use sort, no need to implementing it. When you wat to open file, you just open file. And those regexps – are awesome great.
Then, my wife asked me another question – ok, if it is so great, why do so few people and companies write in it?
This was question I couldn’t find answer for. I told her about that is not so easy to make .exe file from perl script, but as I heard strawberry perl is good in doing it. Or PAR. I’ll have to look closely at them both in near future. Anyway, in C/C++ it is the most natural way to run the program – to make executable of it 🙂 In Perl it is not the natural way. And some companies prefer to have executable files, for example to sell them 🙂
Anyway, that is good question: Why Perl is not so popular as C-something, or java?
Gabor Szabo made a perl ad server, you can display ads to advertise Perl on your website (as I do – you can see them on the right sidebar, if you do not – turn off adblock 🙂 ).
To install this, read more…
During the YAPC::EU 2009 conference in Lisbon, I heard many times that Perl is NOT dead. Interesting, I never considered Perl to be dead. It is funy thing about human brain, it skips the word NOT. So the message I got is: perl is dead. If so many people try to convince me that “perl is NOT dead”, there has to be a good reason that other people think it IS dead. What can this reason be? Old beliefs about perl? Rise of new languages like python, ruby, groovy?
And, more important for myself – what should I do?
There are several things:
- spread the word that perl is great and not dead, by for example joining ironman blogging chalenge
- wait, and do nothing – if perl is good then it may defend itself without my help
- learn a new language, to be safe. Or brush up old good java or C-something.
What do YOU think about it?