Source

perl-begin / src / learn / myth-dispelling / index.html.wml

#include '../template.wml'

<latemp_subject "Why Perl isn't Bad?" />

<p>
It's not uncommon to <b>hear a lot of criticism</b> about Perl. In fact it's 
very common. Among the things you can hear:
</p>

<ul>
<li>
Perl code is ugly.
</li>
<li>
Perl code is unmaintainable.
</li>
<li>
Depending on Perl for a large project guarantees that one will fail.
</li>
<li>
Perl does not scale to high loads or high codebases.
</li>
<li>
Perl is slow.
</li>
<li>
Perl is dying. (or even that Perl is dead).
</li>
<li>
The Perl implementation has a horrible code.
</li>
<li>
Perl, or some parts of it (like its Object Orientedness) is very weak.
</li>
<li>
Perl is not suitable for writing web applications. (And PHP is).
</li>
<li>
Etc.
</li>
</ul>

<p>
Some of these complaints are addressed 
<a href="http://www.perl.com/pub/a/2000/01/10PerlMyths.html">in Simon Cozens'
article "Ten Perl Myths"</a> and 
<a href="http://perl.net.au/wiki/Perl_Myths">PerlNet's Perl Myth List</a>.
Tim Bunce focused on 
<a href="http://blog.timbunce.org/2008/03/08/perl-myths/">dispelling 
three large Perl Myths</a> in a presentation he has given and made available
online.
</p>

<p>
Here are some more observations.
</p>

<h2>When is Perl the right tool for the job?</h2>

<p>
We admit Perl has some problems. However, Perl 5 is still possibly the best
solution for writing a large class of system administration scripts. And
using the <a href="http://www.cpan.org/">Comprehensive Perl 
Archive Network (CPAN)</a> you can usually get the job done much more quickly 
and easily than with any other language. 
</p>

<p>
Perl code can be written to be very maintainable, readable and elegant.
Perl indeed sports many features and properties that make writing short 
programs - often one liners - easier, because this is what people use it for
most of the time. However, there's nothing in Perl that prevents 
writing large-scale, maintainable programs. And in fact
<a href="http://tech.groups.yahoo.com/group/hackers-il/message/4104">such
programs have been written and are still successful.</a>
</p>

<p>
Perl is probably not for everyone. You need to be a good programmer to write
in Perl. However, code written by bad programmers in other languages can
be equally as problematic as code written by bad Perl programmers.
</p>

<p>
The good news is that you can become a good Perl programmer using the resources
on this site and elsewhere, and that learning Perl will improve your
programming ability - not only in Perl, but in other languages as well. Are 
you ready to take on the challenge? Great! Then 
<a href="http://perl-begin.org/resources/">dive right in</a>.
</p>
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.