Hot Skills: Make the web development world your oyster with Perl

Perl is an easy-to-learn language for just about everything

Perl is an easy-to-learn language for just about everything

What is it?

As it approaches its 20th birthday, Perl (Practical Extraction Report Language) has become pervasive, bundled by market-leading suppliers, underpinning businesses such as Amazon, and quietly carrying out essential tasks at sites where management may not realise they have a line of Perl code.

Originally developed for text manipulation, Perl has evolved into a general-purpose programming language used in everything from large critical applications to small nuts-and-bolts jobs in systems administration and web development.

Perl's development has favoured practicality and ease of use over elegance. It has been described as untidy and even ugly, but its support for most programming paradigms and other languages make it both a good entry and jumping-off point for people who want to expand their range of skills.

For those who feel stuck in a rut because there is no personal or organisational training budget, there is a supportive community and a wealth of training and other resources available free to help you become proficient in Perl.

Where did it originate?

Perl traces its ancestry back to C, with elements of Fortran, Lisp, Ada and lesser-known languages such as Awk. It was released in 1987 by Larry Wall, then working at Unisys. Perl 5 replaced Perl 4 (the successor to Perl 1) in 1994. Wall began gathering the community's thoughts on what should be in Perl 6 in 2000, but it has yet to be officially released.

What's it for?

Perl is an essential part of the Lamp (Linux, Apache, MySQL, Perl/Python/PHP) web development stack, and was an early favourite for writing CGI scripts.

Other uses include as a "glue" language, favoured by systems administrators as a way of getting heterogeneous systems to work together. It has been dubbed "the duct tape of the internet".

It is also widely used to generate SQL queries and in other database applications. Its database integration interface supports Oracle and SQL Server as well as MySQL and Postgres. A host of third-party modules is available.

What makes it special?

Perl was designed at a time when CPU power was becoming cheaper, and programmers' time more expensive - a reversal of the situation that prevailed when older languages were developed.

It is a very forgiving language. There are plenty of "right" ways of doing things. It supports procedural, object-oriented and other programming paradigms, and has many features, such as automatic memory management, to lighten the developer's load.

How difficult is it to master?

Perl was designed to be easy to learn. Those with a coding background - particularly in Unix and C - can begin using Perl after an evening's tutorial, although what they can do will be limited. Becoming proficient takes longer, but you can learn as you code.

What systems does it run on?

Linux, Unix, Windows, Macintosh, and "legacy" systems such as VMS.

What's coming up?

Although stable and widely used, Perl 5 has internal flaws that complicate maintenance and the further development of the language. Perl 6, designed by the Perl community - or designed by committee, as detractors would have it - addresses these weaknesses, and makes some major changes, including interchangeable runtime engines that interpret and convert bytecode to and from other languages.

Rates of pay

Perl developers can earn £25,000 to £35,000. Perl is also a required part of many web development and systems admin skills portfolios.


The Perl bible, Programming Perl, is published by O'Reilly and Associates. Also take a look at:


rates of pay

Perl developers can earn £25,000 to £35,000. Perl is also a required part of many web development and systems admin skills portfolios.

Catch up with Hot Skills


Read more on Software development tools