Developer Analysis: Perl, PHP and Ruby
WEBINAR: On-demand webcast
How to Boost Database Development Productivity on Linux, Docker, and Kubernetes with Microsoft SQL Server 2017 REGISTER >
When it comes to Perl, the main advantages are the modules and the Perl community. It's a huge advantage to be working on a project, run into a problem, look to the Perl community only to find that, due to Perl's large user base and long history, someone has already addressed the problem and has created a Perl module that is ready to install and use. Problem solved. The other advantage to that community lies not in modules, but in solutions to your questions. Ask and ye shall receive, at least in the Perl community. And quickly.
The advantages of Perl are both a blessing and a curse. While there are so many ways to handle a problem using Perl, as it is both powerful and flexible, that same flexibility and power make it very difficult to jump into someone else's code and move along with your project. Commenting code is wonderful, but it's something that's not practiced enough by Perl programmers, which leaves a lot to be desired when you are trying to decifer someone else's nightmare of Perl code.
Ruby, on the other hand, is easy to follow--it's code is reasonably readable by normal people. Which means that months after you have written some Ruby code, you will still be able to comprehend just what it was you were doing in that particular code.
And then we get to the programmer's best friend when they need some quick and dirty code to get the job done, PHP. It's more readable than Perl, perhaps less so than Ruby, but when it comes to quick and easy scripting for small tasks, PHP is hard to beat. PHP, which originally stood for Personal Home Page, is still that--easy to integrate into an HTML page.
Each language has it's own merits: Perl is great for text manipulation and offers powerful regular expression syntax. Ruby is great for Object Oriented Programming and readability, and PHP is wonderful for quick and easy solutions to basic website projects. A combination of all these merits in one language would be a godsend. Until then, at least we have these three scripting languages to fall back on.