in reply to Why so much hate?

Right now, i just want to know, if there's anything i'm missing?

Perl grew out of Unix scripting for system administration. If there's anything quicker and dirtier than scripting for system administration, I've never seen it.

Perl gained popularity in the CGI programming days of the early web. If there's anything quicker and dirtier than people copying and pasting and modifying code they barely understand to get something done fast and cheap, it's Unix scripting for system administration.

Perl has its flaws as a language, but keep in mind that it's designed to let people who don't know much about programming get their jobs done with as little ceremony or fuss or fussiness as possible. This lets people make huge messes, but it also lets people get their jobs done.

A lot of people used Perl this way. A lot of people encountered Perl written this way. Rather than realize what a benefit it is that non-programmers could actually program something productive, they blame the language for the messes created by people who didn't know what they were doing. Thus Perl, with its warts, gets a reputation for being unusable and cryptic in some sort of zoological sense.

It's funny; JavaScript is a language in a similar situation, but it gets a lot more love because it's the only game in its niche. I find its flaws worse than Perl's (terrible scoping, lack of a usable module system, poor type system, awful built in aggregate variables), but who knows.

And to be honest, everything in learning Perl 6th Ed works for me...

I wrote (curated?) Modern Perl, and if Learning Perl 6e is working for you, stick with it. It's a gentler introduction to programming, which I like quite a bit for people in your situation, even if it doesn't cover the same subjects Modern Perl covers the way I wanted to cover them. Besides, you can read the free edition of Modern Perl after you finish and get the best of both worlds.

Replies are listed 'Best First'.
Re^2: Why so much hate?
by Carfax (Acolyte) on Aug 06, 2013 at 18:41 UTC
    It's a gentler introduction to programming, which I like quite a bit for people in your situation, even if it doesn't cover the same subjects Modern Perl covers the way I wanted to cover them.

    Thanks for the reply sir/lady. I understand being an author yourself, may cause you to select your words carefully, but what i really need here, is not pampering. I really don't need to plunge my head into flames, just because there might be relief nearby. What i actually need is honesty. What i'm asking for is a point in the right direction. Like i said earlier, i don't mind picking up good books at all, what i'd hate is too go in too deep for me to be able to unlearn some habits.

    And hence the quote

    Learn all you can from the mistakes of others. You won't have time to make them all yourself. -Alfred Sheinwold

      Modern Perl assumes you're already decent at programming, so it elides some basic stuff in favor of explaining how Perl works from philosophy to programming in the large. Learning Perl assumes you've never programmed before, so it spends more time on the basics, covers less of the language, and doesn't explore the philosophy of Perl in as much detail.

        Thank you very much

      I'm noticing that your question about being on the right path isn't directly being addressed.

      Yes, you're on the right track. First, you'll need to actively ignore the detractors. Nearly all of them are misinformed and just passing on misinformation. Then, you'll need to stick out learning the easy stuff, and gradually picking up the more advanced stuff.

      Becoming a good or perhaps great perl coder is a journey. Nearly 20 years ago, I started on that journey, part of what has kept me coming back here has been because I am still learning things. This isn't meant to be a deterrent, or warning that it's that hard to learn, it's not, it's just that deep a subject.

      So, if you're looking to be able to help yourself do something while on "the job", Perl is very likely to become more useful to you with less work than most other languages out there. Why perl now has such a bad reputation is beyond me.


Re^2: Why so much hate?
by taint (Chaplain) on Nov 19, 2013 at 17:37 UTC

    I nominate this post for the sign on the front of the Monastery gate(s)!

    Eloquent, and concise, I couldn't have imagined a more accurate summary.

    +'s to you, chromatic. Thanks for taking the time to create this post.


    #!/usr/bin/perl -Tw
    use Perl::Always or die;
    my $perl_version = (5.12.5);
    print $perl_version;