Zo has asked for the wisdom of the Perl Monks concerning the following question:

When I was younger, asking for help with my homework, I'd ask and get the reply: "go look it up". I'm sure some of you are familiar with that. Now that I'm at a phase in life learning again, I actually want to look it up but I'm not sure where. Not including this site (which has helped me a great deal), I have done online tutorials (such as Roberts online tutorial and others), store bought books (tutorials like Perl Programmers' interactive by V.D.Lowe, and references such as Perl in a nutshell -O'reilly book) and searched other websites (perl.com, etc.). My code is getting better, but I still don't know enough. I'm amazed every time I scan through the halls of this site and read the code. Is there anyway/place to learn about modules and/or other complex situations and how to use them properly? So.. someone just point me in the right direction and I'll take it from there.. so I don't have to bother you all again with what might seem like simple coding questions. Thank you all. -ps- I used the perlmonk pickup line this past weekend.. it worked! I guess it's all about the presentation! :o)

Replies are listed 'Best First'.
Re: ..Go look it up..
by Fastolfe (Vicar) on Nov 03, 2000 at 02:19 UTC
    Don't underestimate a site's search function.

    In addition, I highly recommend just taking some time and go *browse* CPAN sometime. Even if you don't examine each module in detail, when a problem does come up later, suddenly you'll recall that you saw something on CPAN just for that task...

    Likewise with The Perl Cookbook. Just read through it over a few evenings. Not every recipe will have immediate value, but later on, you will find yourself reaching for this book pretty often.

Re: ..Go look it up..
by jptxs (Curate) on Nov 03, 2000 at 02:28 UTC

    not too long ago I asked the same question on How DO those monks do it?. There were a gaggle of great responses from the people who really make this place tick on where they turn to for help and how they find the info they need when they need it. I hope that can help you too : )

    "sometimes when you make a request for the head you don't
    want the big, fat body...don't you go snickering."
                                             -- Nathan Torkington UoP2K a.k.a gnat

Re: ..Go look it up..
by Maclir (Curate) on Nov 03, 2000 at 02:36 UTC
    Zo, like you I have been learning Perl for the last 12 months or so. There is so much information around, it is like trying to sip water from a fire hydrant. Fastolfe's suggestion of using the Perl Cookbook is invaluable. I purchased that book about 9 months ago, and there is always some little gem in there to be discovered.

    Regarding CPAN, there is sure to be something useful there, if only you can find it. Often, I find that the way modules have been named and stored doesn't match my logic. Still, there is lots of stuff there, and taking the time to find it pays off in the end.

    This site is probably the most valuable of all resources on the web. Where else can you get assistance and guidance from most of the top perl experts? And you don't need to don your flame-proof overalls, either.

    Merlyn's web techniques column (link from his home node) is another source of great hints and suggestions.

Re: ..Go look it up..
by clemburg (Curate) on Nov 03, 2000 at 15:01 UTC

    Some suggestions in addition to How DO those monks do it:

    • Read code - the more the better. Figure out what it does, and how, and why (in case of problems ask the original author - most will be happy to explain given a good question).
    • Buy all the O'Reilly Perl Books, Damian Conway's OO Book, Hall and Schwartz's Effective Perl Programming book. Have them at arm's reach, and consult them if you have a problem
    • Learn other languages than Perl - how about some LISP, Python, Prolog, Haskell - whatever you like.
    • Read books about analysis and design, and study programs you care about with respect to how they are designed and why they are designed this way.
    • Learn about the technological issues underlying the programs you write - networking, databases, persistence, security - whatever you need.
    • Use your online manuals - before you ask others.
    • Read textbooks on programming fundamentals - "Structure and Interpretation of Computer Programs" is my favorite introductory text, but there is a host of others out there.

    By far the most important thing to me is to read to code - well written code. This is what will teach you all other stuff. Of course there is no substitute for experience, but good books and reading code will make for an impressing speedup in developing experience.

    Christian Lemburg
    Brainbench MVP for Perl
    http://www.brainbench.com