A rag-tag band of altruists are committed to creating the best
software money can't buy, Nick Langley reports.
Perl is a high-level programming language derived from C, the
Unix shell, and miscellaneous other sources. It is available free
of charge over the Internet, and is shipped with some versions of
Unix and other systems software.
Perl was created in 1987 by Larry Wall, but, like Linux, it has
had input from literally thousands of enthusiasts over the
years.
In some ways it is a relic of the pre-commercial Internet
culture. The core development team, known as the Perl Porters,
describe themselves as "a rag-tag band of highly altruistic
individuals committed to producing better software for free than
you could hope to purchase for money".
Perl is currently at version 5.6, showing evidence of its
stability. Version 5.0 replaced Perl4 in 1994.
According to Tom Christiansen, author of the definitive Perl
reference books (and co-author of Perl itself), Perl's process,
file and text manipulation facilities make it particularly
well-suited for tasks involving quick prototyping, system
utilities, software tools, system management tasks, database
access, graphical programming, networking and Web programming.
"These strengths make it especially popular with system
administrators and CGI script authors, but mathematicians,
geneticists, journalists, and even managers also use Perl," says
Christiansen. "Perl tries to be all things to all people, but
nothing special to anyone," he adds.
Perl is extraordinarily quick and flexible to use. It is
developed, loved and cosseted by a bunch of enthusiasts with no
interest in tying you up with licences, or forcing you to upgrade
to bloated new releases you don't actually need.
The learning curve is gradual, and as long as you choose to make
it. It is easy to begin working with Perl if you have got C and
Unix experience, although almost any programming background will
do.
The resources, compiled by the whole Perl user community,
contain examples of just about anything you are likely to need.
Most tasks only require a small subset of the Perl language, but
there is a lot more to learn and use if you want.
Unix and its derivatives, Windows, Dos, Apple Macintosh, OS/2,
VMS and others.
Despite the hippy aura that puts managers off freeware, Perl is
widely shipped and used in the most respectable installations. The
immense support resource provided by the user community more than
makes up for the lack of an accountable commercial source -
although commercial support is available for those who need it in
writing, for example from The Perl Clinic (01483-862814, www.
perlclinic.com).
Father of Perl Larry Wall with Mother of Pearl, the nacreous
inner layer of oyster shells.
Perl E Gates is a distant relative of Bill.
ISO or Ansi standard Perl - or perhaps not. Organisations
backing Perl, such as Hewlett-Packard, think this would increase
Perl's acceptability. Wall is implacably opposed. "I'll be
certified before Perl is," he says
Training
The standard release of www.perl.com/CPAN/src/latest.tar.gz Perl
(the one maintained by the Perl development team) is distributed in
source code form. You get documentation from the same source. Cpan
(the Comprehensive Perl Archive Network) contains source code,
non-native ports, documentation and scripts.
There is a list of books on Perl available. O'Reilly &
Associates (00-1-707-829-0515) publishes the definitive texts by
Wall, Christiansen and Schwartz.
If all this seems too ad hoc - or your stomach for geeky
in-jokes is limited - formal Perl training is available from
mainstream organisations including QA Training and Sun
Education.
There is a list of UK user groups on the www.Perl Mongers
site.
While Perl can be used for almost anything, the hottest jobs are
in the ISP/e-business sector. Much of the heat comes from the hot
air they talk about money, so take your pick from the realistic
£18,000 to £35,000 offered for Perl analyst programmers to the
inflated £45,000 to £60,000 for consultants.