There is no convincing argument that can be made to a beginner because you couldn’t understand or appreciate the authenticity or fallibility of claims about Perl over other languages. You said “applications.” If you’re talking about phones, the following advice is semi-meaningless. I’m writing about general, back-end-centric web development.

So, over-generalization!

PHP is fine. It’s easy. There are tons of examples and help available. It’s also got more pitfalls and problems than just about anything and the community standards are so low as to border on the criminal when it comes to security and such… though the same could be said about Perl 15 years ago.

Python is fine. It’s on a very similar playing field with Perl but it’s more restrictive by tradition and format. Perl’s élan of TIMTOWTDI is not considered a strength to a Python hacker but a vile, unnecessary degree of freedom, an abomination that has fallen short of the glory of God.

Java is pushed by a corporate agenda to do what ostensibly sounds good: normalize development in a safe, clear, controlled way. For me it ends up an exercise in hoop jumping with a level of verbosity that achieves the exact opposite of clarity. Over explanation is worse than no explanation, even for a sharp layman. For an expert in a field, it borders on torture.

Ruby. The amount of thunder that comes from Ruby compared to the amount of hackers using it and the things done with it is really quite strange… I understand a lot of devs, including a lot of Perl (and former Perl) devs love it. I think it’s no better than Perl in general and fails to keep up with Perl in speed, Unicode, libraries…

Scala. Seems a lot like Perl to me, what little I’ve seen. There is little to see so far.

JavaScript… no longer painful to use server-side, it’s pretty cool and it’s more likely to inherit the immediate future of the web (HTML5 and friends, Flash will hardly be used in 10 years and a footnote in 15, so I say) than anything already covered. Also, if you’re going to be a web dev of any caliber, you’ll have to know some for the front-end anyway. If I were starting from scratch, I might stay right here.

Perl. Easy to start. Years of good documentation in print and online. Style chameleon: procedural, functional, OO; whatever mix you like. Lowest defect density (fewest bugs per feature) of all the high level languages. Extremely fast for an interpreted language and not usually used that way in web production anyway so it can be even faster. Rich history of promoting new code, even of marginal quality, to increase the ecosphere. Tolerant of new and competing approaches. Best testing culture, probably. Tons of friendly users willing to help you at every level. Its flexibility means you can code the way you think. This is seen as a weakness sometimes as we don’t all think through problems super clearly on the first take… but it’s certainly inviting and ship early, ship often beats analysis paralysis pretty much every time.

Perl also has about 20 ways to produce web apps now which are, thanks to the PSGI standard, easy to couple or mix or migrate, and most importantly test!

Pick a tiny project. Try it in Perl and another language or two. See how you like the pace, resources, help, results. I would not be in this line of work if not for Perl so I’m pretty biased but that’s a good referral itself. :P


In reply to Re: using perl as a new user by Your Mother
in thread using perl as a new user by scheaz99

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.