FAQ for the beginners mailing list


Beginning Perl mailing list.

You can see the sorts of messages people send to the list by looking at the web archive. Or if you want to subscribe send an email to beginners-subscribe@perl.org. Please see below for any other questions you might have relating to this mailing list.


beginners-faq - FAQ for the beginners mailing list


How do I subscribe?

Send mail to <beginners-subscribe@perl.org>

You can also specify your subscription email address by sending email to (assuming foo@bar.com is your email address):


How do I unsubscribe?

Now, why would you want to do that? Send mail to <beginners-unsubscribe@perl.org>, and wait for a response. Once you reply to the response, you'll be unsubscribed. If that doesn't work, find the email address which you are subscribed from and send an email like the following (let's assume your email is foo@bar.com):


There is too much traffic on this list. Is there a digest?

Yes. To subscribe to the digest version of this list send an email to:


To unsubscribe from the digest, send an email to:


This is a high traffic list (100+ messages per day), so please subscribe in the way which is best for you.

Is there an archive on the web?

Yes, there is. It is located at:


Is there a supporting website for this list?

http://learn.perl.org/ supports the list

Who owns this list? Who do I complain to?

John SJ Anderson owns the beginners list. You can contact him at genehack@genehack.org.

Who will maintain peace and flow on the list?

John SJ Anderson, Kevin Meltzer and Ask Bjoern Hansen currently carry large, yet padded, clue-sticks to maintain peace and order on the list. If you are privately emailed by one of these folks for flaming, being off-topic, etc... please listen to what they say. If you see a message sent to the list by one of these people saying that a thread is closed, do not continue to post to the list on that thread! If you do, you will not only meet face to face with a XQJ-37 nuclear powered pansexual roto-plooker, but you may also be taken off of the list. These people simply want to make sure the list stays topical, and above-all, useful to Perl beginners.

When was this FAQ last updated?

3 October 2011

Questions about the 'beginners' list.

What is the list for?

A list for beginning Perl programmers to ask questions in a friendly atmosphere.

What is this list not for?

  • SPAM
  • Homework
  • Solicitation
  • Things that aren't Perl related
  • Monkeys
  • Monkeys solicitating homework on non-Perl related SPAM.

Are there any rules?

Yes. As with most communities, there are rules. Not many, and ones that shouldn't need to be mentioned, but they are.

  • Be nice
  • No flaming
  • Have fun

What topics are allowed on this list?

Basically, if it has to do with Perl, then it is allowed. You can ask CGI, networking, syntax, style, etc... types of questions. If your question has nothing at all to do with Perl, it will likely be ignored. If it has anything to do with Perl, it will likely be answered.

I want to help, what should I do?

Subscribe to the list! If you see a question which you can give an idiomatic and Good answer to, answer away! If you do not know the answer, wait for someone to answer, and learn a little.

Is there anything I should keep in mind while answering?

We don't want to see 'RTFM'. That isn't very helpful. Instead, guide the beginner to the place in the FM they should R :)

Please do not quote the documentation unless you have something to add to it. It is better to direct someone to the documentation so they hopefully will read documentation above and beyond that which answers their question. It also helps teach them how to use the documentation.

Where is the Perl FAQ?

Look in the FAQ! Get acquainted with the 'perldoc' utility, and use it. It can save everyone time if you look in the Perl FAQs first, instead of having a list of people refer you to the Perl FAQs :) You can learn about 'perldoc' by typing:

perldoc perldoc

At your command prompt. You can also view documentation online at:

http://perldoc.perl.org and http://www.perl.com

Other tips before posting to the list

  • Check the FAQs first
  • Don't send questions asking ``... will this work?''. Try it first, then report errors and ask the list why it *didn't* work. A good answer to ``will this work?'', is ``What happened when you tried it?''.
  • If your email begins with ``I know this isn't the right place to ask this, but...'', don't send it to this list :) If you know it doesn't belong, send it to where it does.
  • Check the FAQs first
  • Look at the archives, (http://www.nntp.perl.org/group/perl.beginners/) to see if your question has already been answered on the list.
  • Have meaningful Subjects. Subject lines like ``Help!'', and ``This isn't working!'' may be skipped by many people, and you may not get all the great help you want. Try to make your subject lines meaningful. For example, ``sprintf() trouble'', or ``Confused about formats''.

Cross Posting

The beginners-cgi list, as well as the beginners list are sister lists. Many people subscribe to both lists. The beginners-cgi list was created solely to seperate CGI questions from Perl-only questions. This means that you should never, ever cross-post to both lists unless given permission. So, if your question is CGI related, post it _only_ to beginners-cgi, if it is not CGI related, post to the beginners. If you, for some reason, can't determine if your question is CGI related, well, I don't know what to tell ya :)

Other Resources

Websites for beginners?

What resources may be harmful to a beginner?

Beware of Perl4-like code-- You might find some script archives and unauthorized mirrors with old Perl4 versions of Selena Sol and Matt Wright scripts. Don't use those scripts. They are outdated and may even in some cases contain bugs or security problems since many may not have been updated in years. Instead, double-check the master archives at:
Selena Sol (Perl4 and Perl5): http://www.extropia.com
Matt Wright's Scripts Archive (All Perl 4) http://www.worldwidemart.com/scripts/
When looking at scripts, remember the guidlines in 3.3, below, to make an informed decision if a script is one you should be using, or learning from.

How do I determine whether a script I download is a good one?

There are various criterea which can assist you in determining if a script you download is a good one. We generally recommend that beginners do not learn from Perl 4 scripts, or ones which may introduce bad habits. So, here are some tips on spotting the good code:

  • Uses taint mode by default (probably indicates an awareness of security issues).
  • Uses strict, warnings and other tools that enable clean coding practices
  • Uses proper scoping (ie, using my and local where appropriate)
  • Use of CGI.pm instead of cgi-lib.pl (cgi-lib.pl is usually a giveaway that a CGI script is written in the days of Perl 4)
  • Modular use of code (modules or classes) instead of monolithic script

If you are ever in doubt, ask!

What books would be good?

  • Programming Perl, 3rd Ed. by Larry Wall, et al. (O'Reilly)
  • Learning Perl, 3rd Ed. by Randal Schwartz, et al. (O'Reilly)
  • Perl Cookbook, by Nat Torkington/Tom Christiansen (O'Reilly)
  • Mastering Regular Expressions, by Jeffrey Friedl (O'Reilly)
  • Effective Perl Programming, by Joseph N. Hall (Addison-Wesley)
  • Network Programming with Perl, by Lincoln Stein (Addison-Wesley)
  • Writing CGI Applications with Perl, by Kevin Meltzer/Brent Michalski (Addison-Wesley)
  • Object Oriented Perl, by Damian Conway (Manning)
  • Elements of Perl Programming, by Andrew Johnson (Manning)
  • Data Munging with Perl, by Dave Cross (Manning)
  • Teach Yourself Perl in 24 Hours, by Clinton Pierce (Sams)
  • Beginning Perl, by Simon Cozens (Wrox)
  • Modern Perl, by chromatic (Onyx Neon)

I use IRC, any helpful Perl channels out there?

Glad you asked! There is indeed a place where you can ask all your Perl questions on IRC.

  • Network: irc.perl.org
  • Channel: #perl-help

Think Before Posting!

Please always think before you write; when you write you are taking the time of over a thousand people.

If what you write takes just 30 seconds to read, that's more than 8 hours(!) of time burned that could have been used writing code. :)

So please keep the following things in mind when posting:

  • Before you write a question please make sure you've checked all the FAQs and the documentation you know of.
  • Before you write an answer, make sure you that you really are contributing to a solution and doublecheck that no one else already gave the same answer.
  • If your question is about LWP (accessing webpages from Perl), DBI (accessing databases from Perl) or CGI (you know what that is :-) ) there are other mailinglists you should use.
  •     Subscribe by sending mail to:

    They all have digest versions too. You can subscribe to those by inserting -digest just before -subscribe, for example dbi-users-digest-subscribe@perl.org.

  • If you think what you are writing may be taken in a way you didn't intend, please add a smiley :-) Many flame wars are stopped by a simple smiley!
  • No flames. If your fingers are burning as you are typing the email, it would likely be best not to send it. In particular, if the majority of your posting is about another poster rather than another posting, you're probably on the wrong side of the flaming line.
  • The Reasonable Person Principle should be considered to be in effect on this list