Hot skills: Perl

What is it? 2008 was not a good year for Perl, which was left behind by...

What is it?

2008 was not a good year for Perl, which was left behind by PHP and Python, both in ratings which measure demand from employers, and those which measures interest from developers.

And when in September, IBM, Sun and Microsoft got together to fine-tune the Java Virtual Machine for non-Java languages, Ruby, Python and PHP were on the list for immediate action, while Perl was merely discussed as having potential.

It would be premature to write Perl off, however (as all three "P" languages were written off a couple of years back, when demand slumped). Perl has a loyal following, a huge installed code-base, and features that cash-strapped IT departments might be looking for: it is both widely used and supported, and free to download and develop with. It could also be described as stable, since the current version, Perl 5.0, came out nearly 15 years ago.

For the would-be Perl developer, there is a supportive community, a host of free learning resources, and an unrivalled repository of free code. And whether it is slipping down the league tables or not, at the beginning of 2009, there are still some hundreds of UK employers looking for people with Perl in their portfolios.

Where did it originate?

Perl's creator Larry Wall began work on the language in 1987, borrowing from C, Fortran, Lisp, Ada and and other languages.

What's it for?

Perl is described as a general propose programming language, but had its origins in text processing, and first developed a following as a "glue" language among Unix administrators. The emphasis on text and on making disparate things work together made Perl an obvious choice for web developers to write CGI scripts, leading champions to describe it as "the duct tape of the internet". There is a Perl database interface, with drivers for all major current and many legacy databases.

Perl is particularly favoured by scientists, particularly the bioinformatics community. Perl can even be used for GUI development, with Perl/TK, a version of the GUI toolkit originally developed for TCL, and several other GUI toolkits.

Perl supports multiple programming paradigms (procedural and object-oriented), in line with Larry Wall's dictum that "There's more than one way to do it". The emphasis is on getting things done, rather than making them look tidy. This makes Perl forgiving for developers, but can be tough on people who have to debug and maintain their code.

What makes it special?

The Comprehensive Perl Archive Network, or CPan, is perhaps the world's most impressive repository of free software, with about 15,000 downloadable modules.

How difficult is it to master?

Experienced C and C++ programmers and Unix systems administrators can become productive with Perl almost at once. With a general programming background, you should become productive after 40-50 hours.

What's coming up?

The long awaited - and still awaited - Perl 6 has become a curse, not helped by the tendency of champions of Perl 6 to run down Perl 5. "The internals of the version 5 interpreter are so tangled that they hinder maintenance, thwart some new feature efforts" comes not from a hostile reviewer from the Perl or PHP camp, but from the Perl website. 

Jobs and money

Perl developers earn between £18,000 and £45,000.


The Perl "bible" is Programming Perl, by Larry Wall and others, published by O'Reilly and Associates.

Read more on IT jobs and recruitment