Until recently, Python and Ruby were ahead of Perl when it came to developing web applications. Now, thanks to the work of the plackists, we’re right back up there again. By the time I could have become proficient Python + WSGI, Plack and PSGI will be equally good, or better.
So, yeah, when it comes to libraries, we are the champions. Okay, there might be a couple of utilities like Rake and Capistrano that haven’t been duplicated yet, but I’m sure someone is working on it1.
However, there is a reason why you might want to use Python or Ruby ahead of Perl. And that is Google App Engine and heroku. If you have an idea for a web app, you can get started for $0. I know about perl-appengine but it seems to be moribund.
With Perl, if shared hosting is enough for you, a half-decent plan costs $6/month which is $72/year. More likely, you would want a VPS so you can install Plack and Starman which will cost closer to $20 – $25 / month or $240 – $300 / year.
Okay, so it isn’t a reason why I personally would use Python or Ruby over Perl – my free time is somewhat valuable to me. But if you’re getting started and you’re not sure which of the big three scripting languages to choose, it is a strike against Perl.
1. And if they’re not, I don’t need ’em anyway
re: Rake clones in Perl.
There are two… Pake (http://search.cpan.org/dist/pake/) and App-PPBuild (though this as fallen off CPAN? But you can find it on BackPAN).
I’ve never used either of the above so YMMV. Instead I have my own perl “clone” of Rake which I use for $work. Perhaps one day I’ll tidy it up and upload to Github/CPAN?
/I3az/
Sunaba runs your Plack/PSGI apps in the cloud!
http://sunaba.plackperl.org/
There is no need in capistrano for Perl. Git can do all as you need + much more.
Python is ugly for it’s whitespaces, Ruby is greedy for system resources.
Perl is beauty and strong, it’s all i need.
@draegtun – thanks for pointing out Pake. After you left your comment, I found your answer on Stack Overflow so I should have checked there first.
@bokutin – Sunaba doesn’t seem to be a complete alternative to Heroku yet (although it is a very generous offering)
From the website: “Sunaba is an experimental service … Services can be interrupted, shutdown or blocked at any time at their own will. NO WARRANTY. Use at your own risk.”
@zloyrusskiy – I think either I have misunderstood the purpose of capistrano or you have. I thought it was a deployment tool which was used in addition to your source control. How can git deploy to multiple servers?
And for whitespace, I like it in Perl, why is it bad in Python?