Like learning any skill, the fundamental requirement is practice.

Since practice for the sake of practice is rather dull, and not especially rewarding, it is often better to practice on something you have an interest in. Instead of merely using book examples or "problems", try and find some task that you would like to do, and make a program to solve it. This could be something like picking lottery numbers, checking your favorite baseball player's stats, or finding duplicate files on your hard drive, whatever you have an interest in.

The idea is to focus on the problem and not the programming. Subjecting yourself to dozens of academic examples will not teach you how to solve problems, which is really what programming is all about.

I would recommend reading Programming Perl's function section, and familiarize yourself with every function that there is, though obviously not all at once. Understanding the tools you can use is very important, as there is often a single function which can save you a lot of time compared to writing your own out of ignorance. You won't understand all of them at first, but without exposure, you will never understand, so just take it at a comfortable pace. You must learn the vocabulary in order to learn the language.

Unlike Learning Perl, which is more of a tutorial, Programming Perl is more of a reference, which means that you aren't necessarily expected to read it cover-to-cover in a direct sense. It's there for you to pick up when you need help with something, like how split works, or to find a function that sorts. It's like a dictionary in that sense.

Making it enjoyable will make your learning more productive.

In reply to Re: Best Approach to Learn Perl for a Non Programmer by tadman
in thread Best Approach to Learn Perl for a Non Programmer by dru145

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.