Mr. Turritopsis Dohrnii Teo En Ming,
Happy New Year from Wales.
You asked:
May I know if Perl is still in vogue?
Should I start learning Perl?
There is Perl and what used to be called Perl6, which is now called
Raku. This is an email list for Raku, aka Perl 6.
Lets start with 'vogue-ness'.
When I was a student, FORTRAN was the main language for science, and
COBOL was for finance. When I first set up an intranet for KPMG in their
Moscow office, Perl 5 had just appeared and it was THE internet
language. Since then many languages have come into fashion, and Python,
JAVA, and Go seem to me to be widespread, whilst C remains incredibly
important. You can find listings of popular languages on the internet.
However, consider that once a piece of software has been written in a
language, transferring it 100% to another language is very difficult.
Transferring about 95% is easy, but it is the rare cases that are
difficult to get right. So companies with huge investments in software
systems written in COBOL, Fortran, and Perl do not want to change the
language, and they look for programmers who can maintain these software
systems. Even though most programmers hate COBOL as a language (it is
now old, but in its day was ground-breaking), COBOL programmers get high
salaries from big companies with large software investments.
The same is even more true of Perl. Perl continues to be a good
language, with VERY many modules and new ones being written, with VERY
many companies relying on existing software systems based on Perl.
So does 'in vogue' mean what is fashionable today, but discarded
tomorrow, or does it mean something for which there is a massive and
continuing demand? Note that here I am trying to distinguish between
volatile 'fashion' and what is in demand, which is an aspect of being
'in vogue'.
It might easily be true that programmers are paid more if they have
skills in languages with large installed bases, but which are out of
fashion! The reason is that languages 'in fashion' attract many young
people, who are taught these languages in schools and colleges. So the
population of junior programmers with 'in fashion' skills is large.
Programmers with older language skills are rarer, so they get paid more.
So if you are looking for a language to serve you in a career, then do
not look at 'fashion', but look at the installed base. In which case
Perl is a very good choice.
More important for a good programmer, though, is to learn the "Way" or
"Art" of programming because various techniques for writing good
software are applied in any different languages. Essential to good
programming is testing, and particularly unit testing. I only started to
use unit tests as part of the way I develop software quite late in my
career. It is so easy to dismiss it as extra admin, rather than an
essential way of thinking about the results generated by software. Also,
things like program structure, naming variables and code elements in a
self-documenting manner, differentiating between inheritance and code
re-use, and so on are vital for good progamming.
Raku (previously known as Perl 6) is an excellent choice of language to
learn because it has been designed to make good programming techniques
easy. Once you have mastered important software techniques in Raku, you
can then employ them in other settings.
At one time, I had to write in Java (for Android apps) and C (embedded
systems), but for all my own tasks I used Raku. At the time Raku was
very slow to compile (that is getting much better), but the ease with
which I could write a small script to do a complex thing in a way that
is easy to understand and debug is unmatched (I think) by any other
language.
Raku is still at the forefront of language design, with its ability to
handle Unicode (eg., you can name your variables in simplified or
traditional Chinese script), grammars, concurrent programming, and
several other areas. Why is Raku not more widespread? Probably because
it does not have a big company sponsoring its development, and
advertising it.
So short responses to your questions:
Is Perl 'in vogue' in the meaning of is it fashionable? Is that a good
question to be asking? The answer is 'Perl is not as fashionable as it
once was'. But are you asking because you only want to follow fashion,
or are you asking to see how best to develop yourself in your career, or
as a programmer. Is Perl in vogue because it is widely used, then yes
Perl is in vogue.
Is Raku fashionable? If you look at the quality of the people in the
Raku community, and their experience with other languages, and when you
consider the types of things that interest computer scientists and being
implemented in Raku, then 'yes, Raku is fashionable'. But if by
fashionable, you mean what is being hyped by influencers, or companies
with money trying to get you locked into their products, then 'no, Raku
is not fashionable'.
Should you learn Perl and Raku, then 'yes because it will benefit you in
your career and as a programmer'.
Hope this helps.
On 01/01/2022 09:42, Turritopsis Dohrnii Teo En Ming wrote:
Subject: Should I start learning Perl?
Good day from Singapore,
I am thinking of learning Perl. May I know if Perl is still in vogue?
Should I start learning Perl?
I am looking forward to your replies.
Thank you very much.
Regards,
Mr. Turritopsis Dohrnii Teo En Ming
Targeted Individual in Singapore
1st Jan 2022 Saturday