Whether you're a visitor to PerlMonks, a newly registered member, or a long-time resident who's simply having trouble making sense of the site, this introduction is for you!

There are many ways to slice PerlMonks...

In terms of User Interface, you'll see the site's features in one of two kinds of web page parts:

  1. Page "main body" content — known as nodes
  2. Side-bar content — known as nodelets

The Content Features of PerlMonks can be categorized roughly into the following (not entirely disjoint) categories:

  1. Information (for display only)
  2. Forums
  3. Interactive functions (searching, configuration, etc.)
  4. Messaging

The capabilities of PerlMonks exposed to you depend on your User Status:

  1. Registered and Logged In
  2. Not Logged In

Ways in which you use PerlMonks can be categorized into four broad Modes of Usage:

  1. Finding and Absorbing Knowledge from the site
  2. Asking for Advice and Assistance from other users of the site
  3. Sharing Code and Contributing Knowledge to the site
  4. Helping Maintain the Site Itself

User Interface: Web Page Parts


This document you are reading is a node. Its unique node number, 213052, can be seen in the URL of the page. Its content appears in the main area of the page. As a general rule, whatever content you see in the middle, main area of the page belongs to the node specified by the node ID in the URL. The rest — framing stuff along the top and sides — does not.


On the right side of the page, you see a tall, narrow table divided into several sections, with headings such as Chatterbox, Other Users, Sections, and so on. Those are nodelets. They are discrete chunks of additional stuff added onto the display of all (well, most) nodes. You can think of them as plug-ins. There are many nodelets, but by default only a few of them are shown. A description of all the nodelets is outside the scope of this document, but the PerlMonks FAQ has more information if you're curious.

Content Features

Information (display only)

Many pages on the site simply display information for you to read. Some of this information is static, such as menus and documentation. In other cases, the information is dynamic, updating automatically on a daily or minute-by-minute basis.

Examples are the PerlMonks FAQ, The Monastery Gates, The St. Larry Wall Shrine, Saints in our Book, and others. Tutorials posted by other monks could be considered as being in this category.


A forum (or bulletin board, if you prefer) is a place where people communicate (asking and answering questions, for example) by posting new nodes. As such, their posts are permanent. You can still read the exchanges posted by monks years ago! In a forum, one person (such as yourself) posts a new node, and then other users post replies to it. The original post (what we call the "root" post) and all of its replies are collectively known as a "thread". Typically, some time after a user posts a root node, it appears on The Monastery Gates. That is how other users find out that the new post exists. (Well, it's one way.)

Note: Formally, the PerlMonks term for forums is sections. That is the word you will see used throughout the site, including in the PerlMonks FAQ. Better get used to it!

Interactive functions

The site has quite a wide variety of interactive functions. One which is fairly unique is Super Search, the on-site general purpose searching facility. Registered users have a message inbox, and a family of pages for setting their personal preferences for the site's look and feel. (They are out of scope here, but you can see Help for User Settings in the FAQ.)


PerlMonks supports two kinds of messaging:

Private Messaging

Registered users can send short (one line) text messages to each other. These are not "instant" messages; rather, the message goes into the recipient's message inbox. It's as if you had an email inbox, but could never open an email; all the information has to be carried in the subject line.

Public Messaging, also known as the chatterbox

The chatterbox is a tiny, continuously updated bulletin board type message stream. When you send a message to it, it gets added to the end, and everyone can see it. (Only registered users, logged in, can send messages to the chatterbox.) The chatterbox is pretty close to real time, but it does not use any "push" technology; your chat client has to continually fetch the updated chatterbox content from the PerlMonks server.

They really don't have anything to do with each other, though PerlMonks sometimes tries to blur the distinction (for example, in the Chatterbox nodelet).

User Status

Registered User, Logged In

If you are logged in, you have lots of ways can interact with and contribute to the site, including participating in the Chatterbox and customizing your user interface. To log in, you must have registered as a user; see Creating an account on PerlMonks for details on that process. Most of this document assumes you are registered and logged in.

Not Logged In

People who use PerlMonks without logging in are assigned the blanket name Anonymous Monk. As Anonymous Monk, you can read the Chatterbox but you can't write to it, and you're pretty much stuck with using the site in its default form, with no possibility for personalization. Note that even if you are registered, you will be Anonymous Monk unless you log in!

Modes of PerlMonks usage

Reading and Learning.

Q. How can I get up to speed quickly on using the PerlMonks site?

A. Read the PerlMonks FAQ, which has just about all the information you're likely to need.

Q. I came here to learn Perl. Where do I start?

A. The best place to start is probably with the Getting Started with Perl category of the on-site Tutorials.

Q. And after that?

A. The rest of the Tutorials. You can also browse and study the Categorized Questions and Answers.
Another great source of illumination would be the various Meditations and cool uses for Perl posted by other monks.

Q. I have a question about Perl, but it has probably been asked before. How can I avoid embarrassment?

A. Read the Perl FAQ, and check to see if your question is answered there.

Q. Doesn't PerlMonks have the Perl documentation on line?

A. Yes; it is called the Library. However, it is rather out of date. Now we just point people to, which always has the latest and greatest on-line Perl documentation.

Q. That little Search widget at the top of the page isn't very smart. Does PerlMonks have a better search function?

A. The Search box at the top of the page only searches in node titles, and it ranks hits by a score based on how many words matched. The more general search function is Super Search. In addition, you can use Google and other web indexers; simply tell them to restrict the search to site

Q. Where can I catch up with the latest happenings in the world of Perl?

A. Go read Perl News.

Getting Help and Advice.

Q. I have a question on how to do something in Perl; or, I'm unsure why something in my program just isn't working. How can I get help?

A. First, read the Understanding and Using PerlMonks category of Tutorials for some excellent advice on how to ask for, and receive, help.
You would also do well to read the Question-asking section of ybiC's excellent index of useful information.

Once you have done that, you may join the ranks of Seekers of Perl Wisdom.

It is wise always to ask your question in the Chatterbox first. Many times, you will get all the help you need via the Chatterbox.

If your problem requires more elaboration than is convenient for the Chatterbox, then you should consider posting a new note in Seekers of Perl Wisdom.

Q. People keep telling me to post my code on my "scratchpad". What is that, and how do I post code on it?

A. Your member account has a page in which you can put anything at all you wish to post for others to see. This is called your scratchpad. If you have asked other people to help you with your perl code, this is a convenient place for you to put it where they can see it.
To put something in your scratchpad, follow these steps:

  1. Follow this link to your scratchpad, then click the "Edit" link near the top.
  2. Paste/type your stuff into the upper of the two text boxes.
  3. Click the "submit" button.
  4. To direct someone to look at your scratchpad, include the following string in your message: [pad://]

For more details, see How do I work with Scratchpads?

Sharing and Contributing.

Q. I have something I'd like share or discuss, which is more or less Perl related, but it's not exactly a question. Is there a place for such things?

A. As always your best bet is to start with the Chatterbox, if you're a registered user. Otherwise, post it in the Meditations section. Depending on how you phrase it, you may or may not get much feedback/discussion from the monks.

Q. I have a module, program, or snippet which I think others might find useful or at least interesting. How can I share it?

A. A good place for that is usually Cool Uses For Perl. If the code isn't meant to be used as is, but your intent is solicit feedback on it, you may post it in Meditations, with RFC prepended to the title.

Q. There's some aspect of the PerlMonks web site which I think could be better; or at least, I wonder why it is the way it is. Where can I bring it up for discussion with the site maintainers and the PerlMonks community in general?

A. The place for that is PerlMonks Discussion.

Q. I wrote some wickedly cryptic Perl code. Where do I put it, so others can see it and be utterly amazed/confounded?

A. Post it in the database of Obfuscated Code.

Q. Is there a place to post Perl Poetry?

A. Yes.

Helping with Site Maintenance

Q. I'd like to help out with site maintenance. How can I get involved?

A. Site maintenance encompasses things like enhancing the site's functionality and improving the site documentation. These kinds of activities require that you have extensive experience with all aspects of the site's functioning, and a deep understanding of the policies and the history behind them. Therefore, new users are not normally permitted to participate in such activities.

Q. How does it work?

A. The site maintenance powers are role based, and so are conferred through membership in special users groups. There is a group for site functionality enhancers ("PM developers"), a group for site documentation maintainers ("Site Doc Clan"), and so forth. The top-level site administrators ("root" users, for you UNIX heads) are in a group called "gods". One special group you will hear about rather often is the "janitors". These are the people who clean up badly formatted user posts. See More about groups.

Please note: You do not need to be a member of a user group to interact with PerlMonks in normal "user mode".