Introduction to Moodle

William Rice

September 2011


(For more resources on Moodle, see here.)

The Moodle philosophy

Moodle is designed to support a style of learning called Social Constructionism. This style of learning is interactive. The social constructionist philosophy believes that people learn best when they interact with the learning material, construct new material for others, and interact with other students about the material. The difference between a traditional class and a class following the social constructionist philosophy is the difference between a lecture and a discussion.

Moodle does not require you to use the social constructionist method for your courses. However, it best supports this method. For example, Moodle allows you to add several kinds of static course material. This is course material that a student reads, but does not interact with:

  • Web pages
  • Links to anything on the Web (including material on your Moodle site)
  • A directory of files
  • A label that displays any text or image

However, Moodle also allows you to add interactive course material. This is course material that a student interacts with, by answering questions, entering text, or uploading files:

  • Assignment (uploading files to be reviewed by the teacher)
  • Choice (a single question)
  • Lesson (a conditional, branching activity)
  • Quiz (an online test)

Moodle also offers activities where students interact with each other. These are used to create social course material:

  • Chat (live online chat between students)
  • Forum (you can have zero or more online bulletin boards for each course)
  • Glossary (students and/or teachers can contribute terms to site-wide glossaries)
  • Wiki (this is a familiar tool for collaboration to most younger students and many older students)
  • Workshop (this supports the peer review and feedback of assignments that students upload)

In addition, some of Moodle's add-on modules add even more types of interaction. For example, one add-on module enables students and teachers to schedule appointments with each other.

The Moodle experience

Because Moodle encourages interaction and exploration, your students' learning experience will often be non-linear. Moodle can be used to enforce a specific order upon a course, using something called conditional activities. Conditional activities can be arranged in a sequence. Your course can contain a mix of conditional and non-linear activities.

In this section, I'll take you on a tour of a Moodle learning site. You will see the student's experience from the time that the student arrives at the site, through entering a course, to working through some material in the course. You will also see some student-to-student interaction, and some functions used by the teacher to manage the course.

The Moodle Front Page

The Front Page of your site is the first thing that most visitors will see. This section takes you on a tour of the Front Page of my demonstration site.

Probably the best Moodle demo sites are and

Arriving at the site

When a visitor arrives at a learning site, the visitor sees the Front Page. You can require the visitor to register and log in before seeing any part of your site, or you can allow an anonymous visitor to see a lot of information about the site on the Front Page, which is what I have done:

(Move the mouse over the image to enlarge.)

One of the first things that a visitor will notice is the announcement at the top and centre of the page, Moodle 2.0 Book Almost Ready!. Below the announcement are two activities: a quiz, Win a Prize: Test Your Knowledge of E-mail History, and a chat room, Global Chat Room. Selecting either of these activities will require to the visitor to register with the site, as shown in the following screenshot:

Anonymous, guest, and registered access

Notice the line Some courses may allow guest access at the middle of the page. You can set three levels of access for your site, and for individual courses:

  • Anonymous access allows anyone to see the contents of your site's Front Page. Notice that there is no Anonymous access for courses. Even if a course is open to Guests, the visitor must either manually log in as the user Guest, or you must configure the site to automatically log in a visitor as Guest.
  • Guest access requires the user to login as Guest. This allows you to track usage, by looking at the statistics for the user Guest. However, as everyone is logged in as the user Guest, you can't track individual users.
  • Registered access requires the user to register on your site. You can allow people to register with or without e-mail confirmation, require a special code for enrolment, manually create their accounts yourself, import accounts from another system, or use an outside system (like an LDAP server) for your accounts.

The Main menu

Returning to the Front Page, notice the Main menu in the upper-left corner. This menu consists of two documents that tell the user what the site is about, and how to use it.

In Moodle, icons tell the user what kind of resource will be accessed by a link. In this case, the icon tells the user that the first resource is a PDF (Adobe Acrobat) document, and the second is a web page. Course materials that students observe or read, such as web or text pages, hyperlinks, and multimedia files are called Resources.


(For more resources on Moodle, see here.)


In the side bars of the page, you will find Blocks. For example, the Main menu, Calendar, and In the side bars of the page, you will find Blocks. For example, the Main menu, Calendar, and Tags blocks. You can choose to add Blocks to the Front Page and to each course, individually. blocks. You can choose to add Blocks to the Front Page and to each course, individually.

Other Blocks display a summary of the current course, a list of courses available on the site, the latest news, a list of the people who are online, and other information. In the lower-right corner of the Front Page you will see the Login Block.

Your site's Front Page is a course! You can add Blocks to the Front Page of your site because the Front Page is essentially a course. Anything that you can add to a course—such as Resources or Blocks, can be added to the Front Page.

Site Description

On the rightmost side of the Front Page you can see a Site Description. This is optional. If this were a course, you could choose to display the Course Description here.

The Site or Course Description can contain anything that you can put on a web page. It is essentially a block of HTML code that is put onto the Front Page.

Available courses

You can choose to display available courses on the Front Page of your site. In the demonstration site, I've created a category for Free Courses and another for Wild Plants. Free Courses allow Guest users to enter. Courses in other categories require users to register.

Clicking on the Information icon next to a course displays the Course Description. Clicking on a course name takes you to the course. If the course allows anonymous access, you are taken directly into the course. If the course allows guest access, or requires registration, you are taken to the Login screen.

Inside a course

Now let us take a look inside a course.


In the preceding screenshot, the user has logged in as student1 and entered the Basic Botany course. We know this from the breadcrumbs trail in the upper-left corner of the screen, which tells us the name of the site and the name of the course. In the upper-right corner of the screen, we see a confirmation that the user has logged in.


Like the Front Page, this course uses various Blocks. The most prominent is the Navigation Block on the left. Let's talk more about navigation.

Navigation Block

The Navigation Block shows you where you are, and, where you can go in the site. In the demonstration, you can see that the student has access to several courses: Email Overload, Basic Botany, Outlining, Mnemonics, and Critical Reading. Right now, the student is in the Basic Botany course, in the topic labeled About this Course. Under that topic, you can see a variety of resources and activities.

With just a few clicks, the student can open another course and jump to a place in that course.

Earlier in this article, I commented on the non-linear nature of many Moodle courses. Notice that all of the resources for this course are available to the user at all times. Later, we'll discuss features that allow you to set conditions for when activities or resources become available to the student.

At the top of the Navigation Block is a link to the site's Home page. Below that, is a link to the student's home page, My home. The student's home page lists the courses that the student is enroled in, and the work that the student performs in those courses.

Also on the Navigation Block is a link to the student's profile, My profile. The name gives the impression that you will find information such as contact information, interests, and maybe a picture of the student, under this link. But there's actually much more under that link:

Notice that we are viewing a Blog entry made by the user. At the bottom of the blog entry, Moodle tells us what course the user made this blog entry in: Email Overload. In Moodle, when a user makes a blog entry or forum posting in a course, that entry/post appears both in the course and in the user's profile.

The user's Messages are also collected under this link. Here the user can see both received and sent messages.

The drop-down list lets the user filter messages by person or by course.

The user's profile also contains a link to any personal files uploaded into Moodle by this user:

Unlike Forum posts and Blog entries, the My private files page doesn't display files that the student has uploaded to specific courses. The files here are, literally, private. However, when the student submits a file to a course, the student can select a private file and submit it to the course.


Moodle also allows you to organize a course by Week, in which case each section is labeled with a date instead of a number. Or, you can choose to make your course a single, large discussion forum. Most courses are organized by Topic, like the one shown in the following screenshot:

Notice that the first topic, which I've labeled About this Course, is not numbered. Moodle gives you a Topic 0 to use as the course introduction.

Teachers can hide and show topics at will. This enables a teacher to open and close resources and activities as the course progresses.

Topics are the lowest level of organization in Moodle. The hierarchy is: Site Course Category | Course Subcategory (optional) | Course | Topic|. Every item in your course belongs to a Topic, even if your course consists of only Topic 0.

Joining a discussion

Clicking on Course Discussion, under Group Activities, takes the student to the course-wide forum. Clicking on a topic line opens that thread. You can see in the following screenshot that the teacher started with the first post. Then a student replied to this post:

That Student's message doesn't serve our students. Fortunately, the teacher has editing rights to this forum, and so he or she can delete posts at will. The teacher can also rate posts for their relevance, as shown in the following screenshot:

Because Moodle supports an interactive, collaborative style of learning, students can also be given the ability to rate forum posts and material submitted by other students.

Completing a workshop

Now in our demonstration course, the student will enter a workshop called Observing the Familiar.

In this workshop, the student writes and updates some defined observations. These observations are then rated by other students of the course. When the student first enters the workshop, he or she sees instructions for completing the workshop, as shown in the following screenshot:

After reading these instructions, the student continues to the workshop submission form:

Notice the online word processor that the student uses to write the assignment. This gives the student basic WYSIWYG features. The same word processor appears when course creators create web pages, when students write online assignment entries, and at other times when a user is editing and formatting text.


(For more resources on Moodle, see here.)

Editing mode

Let us see what happens when you turn on the editing mode to make changes.

Normal versus editing mode

When a guest user or a registered student browses your learning site, Moodle displays pages normally. However, when someone with course creator privilege logs in, Moodle offers a button for switching into editing mode:

Clicking on Turn editing on puts Moodle into Editing mode:

Let's walk through the icons that become available in editing mode.

The Editing icon

Clicking the Edit icon allows you to edit whatever that icon follows. In this example, clicking on the Edit icon that follows the paragraph allows you to edit the announcement, as shown in the following screenshot:

Clicking on the Editing icon next to the quiz Win a Prize takes you into the editing window for that quiz. In that window, you can create, add, and remove quiz questions, change the grading scheme, and apply other settings to the quiz.

The Delete icon

Clicking on the Delete icon deletes the item that the icon follows. If you want to remove an item from a course, but you're not sure if you'll want to use it later, don't delete the item; instead, hide it from view. Hiding and showing items is explained in the following section.

The Hidden/Shown icons

I call these the Hidden/Shown icons / instead of Hide/Show because the icons indicate the current state of an item, instead of indicating what will happen when you click on them. The Hidden icon indicates that an item is hidden from the students. Clicking on it shows the item to the students. The Shown icon indicates that an item is shown to the students. Clicking on it hides the item from the students.

If you want to remove an item from a course while keeping it for later use, or if you want to keep an item hidden from students while you're working on it, hide it instead of deleting it.

The Group icons

The icons indicate what Group mode has been applied to an item. For now, you should know that you can control access to items based upon what Group a student belongs to. Clicking on these icons allows you to change this setting.

Resources and Activities

Course material that a student observes or reads, such as web or text pages, hyperlinks, and multimedia files—are called Resources. Course material that student interacts with, or that enables interaction among students and teachers, are called Activities. Now let us see how to add some Resources and Activities to your Moodle site.

In Editing mode, you can add Resources and Activities to a course. Moodle offers more Activities than Resources, including Chat, Forum, Quiz, Wiki, and more.

Adding Resources and Activities

You add Resources and Activities by using the drop-down lists that appear in Editing Mode:

Selecting an item brings you to the Editing window for that type of item. For example, selecting URL displays the window to the right. Notice that you can do much more than just specify a hyperlink. You can give this link a user-friendly name, a brief description, open it in a new window, and more.

Almost every Resource and Activity that you add to Moodle has a Description. This Description appears when a student selects the item. Also, if the item appears in a list (for example, a list of all the Resources in a course), the Description is displayed in the list.

When building courses, you will spend most of your time in the Editing windows for the items that you add. You will find their behavior and appearance to be very consistent. The presence of a Description is one example of that consistency. Another example is the presence of the Help icon next to the title of the window. Clicking on this icon displays an explanation of this type of item.

The Settings menu

The full contents of the Settings menu are displayed only when someone with administration or course creator privileges has logged in. The following screenshot shows the teacher's view of the Settings menu:

The choices on this menu apply to the course itself. If a teacher, administrator, or course creator selects an activity or resource in the course, a Settings menu for that item will appear, as shown in the following screenshot:

Notice that the items that used to be under the course settings menu are now under a Course administration menu.

The Moodle architecture

Moodle runs on any web server that supports the PHP programming language, and a database. It works best, and there is more support, when running on the Apache web server with a MySQL database. These things, Apache, PHP, and MySQL are common to almost all commercial web hosts, even the lowest cost ones.

The Moodle learning management system resides in three places on your web host:

  • The application occupies one directory, with many subdirectories for the various modules.
  • Data files that students and teachers upload—such as photos and assignments—reside in the Moodle data directory.
  • Course material that you create with Moodle (web pages, quizzes, workshops, lessons, and so on), grades, user information, and user logs reside in the Moodle database.

The Moodle application directory

The screenshot below shows you my Moodle application directory. Without even knowing much about Moodle, you can guess the function of several directories. For example, the admin directory holds the PHP code that creates the administrative pages, the lang directory holds translations of the Moodle interface, and the mod directory holds the various modules:

The index.php file is the Moodle home page. If a student were browsing my Moodle site, the first page that the student would see is the file

On my site, the free course Basic Botany for Foragers happens to be course number 4. Only the Moodle system knows it as course number 4; we know it as Basic Botany for Foragers. When a student enters that course, the URL in the student's browser reads In the preceding screenshot, you can see that /course is one of the directories in my Moodle installation. As the user navigates around the site, different .php pages do the work of presenting information.

As each of Moodle's core components and modules is stored in its own subdirectory, the software can be easily updated by replacing old files with newer ones. You should periodically check the website for news about updates and bug fixes.

The Moodle data directory

Moodle stores files uploaded by the users in a data directory. This directory should not be accessible to the general public over the Web. That is, you should not be able to type in the URL for this directory and access it using a web browser. You can protect it either by using an .htaccess file or by placing the directory outside of the web server's documents directory.

In my installation, the preceding screenshot shows you that the web document directory for is /www/moodle. Therefore, I placed the data directory outside of /www/moodle, in /www/moodledata:

On my server, the directory /www/moodledata corresponds to the subdomain This subdomain is protected from open access by an .htaccess file. The directory /www/www corresponds to the root domain,

The Moodle database

When the Moodle data directory stores files uploaded by students, the Moodle database stores most of the information in your Moodle site. The database also stores objects that you create using Moodle. For example, Moodle enables you to create web pages for your courses. These web pages' actual HTML code is stored in the database. Links that you add to a course, the settings and content of forums and Wikis, and quizzes created with Moodle, are all examples of data stored in the Moodle database.

The three parts of Moodle: the application, data directory, and database, work together to create your learning site. However, knowing how the three parts work together is also helpful when upgrading, troubleshooting, or moving your site between servers.


Moodle encourages exploration and interaction between and among students and teachers. As a course designer and teacher, you will have most of the tools at your disposal if you work with this tendency in mind, and make your learning experiences as interactive as possible. Creating courses with forums, peer-assessed workshops, surveys, and interactive lessons is more work than creating a course from a series of static web pages. It is also more engaging and effective, and you will find it worth the effort to use Moodle's many interactive features.

When teaching an online course in Moodle, remember that Moodle allows you to add, move, and modify course material and grading tools on-the-fly. If it's permitted by your institution's policies, don't hesitate to change a course in response to student needs.

Further resources on this subject:

You've been reading an excerpt of:

Moodle 2.0 E-Learning Course Development

Explore Title