Monday, May 9, 2016

XML template for creating entries to import into Moodle Glossary

Let's say you want to write a bunch of entries for a Glossary on your Moodle and you want to do this offline -- not directly on your Moodle. In that case the best course of action is to create an XML file with all the entries and import it into a Glossary.

Here's an XML template that you might like to use. It also contains an example of an entry including hyperlinks (you have to use &lt, &gt and &quot in place of <, > and ", respectively).

To create your own entries, copy the lines between <ENTRY> and </ENTRY>. The tags after </DEFINITION> need a binary input: 0 or 1. I'm not sure what <FORMAT> means but I don't think there's any harm keeping this and the last one - <TEACHERENTRY> - as 1. The other three tags match the below settings which you'll see when you try to add a new Glossary entry in Moodle. If they're not self-explanatory see this page.

PS. This post has been featured in Moodlenews!

Monday, May 2, 2016

List of emoticons in Moodle

Depending on the cultural and digital literacy context in which you work, you may find that people use emoticons well, awkwardly, or not at all. If you'd like to promote the use of emoticons on your Moodle, here's a link to a webpage I've created with snapshots of Moodle emoticons. The only Moodle emoticon I've left out is "kiss" -- I don't think that would be very appropriate for most online courses!

Friday, April 1, 2016

User count in the Online Users block in Moodle

In Moodle 2.6 the number of online users is not displayed in the Online Users block until you have at least 50 online users. Until that point you see only their names. Turns out the Online Users block can accommodate a maximum of 50 names. Names beyond the first 50 online users are not displayed, and the online user count magically appears at the top of the block. Sensible -- it's a lot to see the names of even 50 online users! There doesn't seem to be a way of changing this setting, at least in Moodle 2.6.

I discovered this just now -- it's the first day of the AuthorAID MOOC, which I'm facilitating, and we have more than 2000 participants! 

Efficiency tip for Moodlers dealing with many Moodle assets

So you're a super-active Moodle admin or teacher who has to dip in and out of many courses and perhaps even many Moodle sites. On your admin homepage you can use the Admin Bookmarks block to bookmark settings pages within your Moodle site, and of course all the courses you're enrolled in will appear in the Course Overview block. But these aren't enough for me. So I use a simple bookmarking scheme on Firefox. This is what my bookmarks toolbar looks like:

In the "Active spaces" bookmark folder I have links to all the active learning spaces (not all are formal courses so I prefer to say "spaces") on the main Moodle site I work on. Some links point to settings pages within courses, eg, the enrolment page for the ongoing AuthorAID MOOC so that I can quickly check how many people have enrolled. "Old spaces" has links to spaces where courses or interactions have ended but which I still need to refer to now and then. And "More Moodles" is well, a collection of links to other Moodle sites where I help out as an administrator -- these are mostly Moodle sites managed by developing countries universities that are connected to the charity I work for, INASP.

Tuesday, March 15, 2016

Using the Moodle Certificate plugin when you've made exceptions for some students

Consider this scenario:
  1. You have a Moodle course with a bunch of activities and students need to complete these activities. You're using condition-based activity completion (eg, getting a passing score on a quiz, receiving a grade on an assignment) to track their work.
  2. Some students don't complete some of the activities but you give them something else to do, and this work is managed outside the course in Moodle.
  3. You want to generate certificates for course completers using the Certificate plugin. This will work for those who've done everything they need to do within the course. But what about those for whom you've made exceptions?
This is one approach:
  1. Create a hidden Assignment activity somewhere in the course. Call it "Course completion indicator" or something similar. In the completion settings for this activity, indicate that students should receive a grade to complete the activity. 
  2. Download the gradebook. Add one or more temporary columns to put in formulas to figure out who has completed the course based on the normal criteria. Then find the "Course completion indicator" column and put 100 against the name of (a) every person who has completed the course based on the normal criteria and (b) every person for whom an exception was made. The only manual work is to deal with students in category (b). And this shouldn't be a lot of work because exceptions should be made for just a few students -- otherwise the course completion criteria as a whole need to be changed!
  3. Copy over the values in the "Course completion indicator" column and paste it in a new column (that is, copy the column and paste "values only" in a new column).
  4. Delete the old "Course completion indicator column".
  5. Delete the temporary column(s) created in step 2.
  6. Now you should have a spreadsheet that has a format identical to what you downloaded from your Moodle site. This is very important - there should be no missing or additional columns. The only difference is that there are values in the "Course completion indicator" column. 
  7. Save this spreadsheet as a CSV file. This is your new gradebook.
  8. Import the sheet into your course. Change both "map from" and "map to" to "email address". Set all the other mappings to "ignore" EXCEPT the mapping for "Course completion indicator". For this you should select "Course completion indicator" - or whatever else you might have renamed this to in your sheet. Complete the import process. You'll now have a gradebook in the course in which "Course completion indicator" is the only activity that needs to be checked to determine course completion.
  9. You can now set up the Certificate plugin and add only one restriction criteria: the certificate should be available only to those who have got a score of 100 in the "Course completion indicator" activity.

Tuesday, March 8, 2016

Vertical layout for matching question in Moodle Lesson

Moodle Lesson is one of the most interesting and flexible of the 14 activities that are available on a stock Moodle site. One of the things you can do in a Lesson is include questions. But I'm not very pleased with the layout of the matching type question. This is an example of how a matching question appears in a Moodle Lesson:

The first two matching pairs look okay but there's a sort of alignment problem with the third. The problem might become worse if you have an even longer item in the left column of the matching pair. And what's with the right aligned text? Maybe it works for short items in the left column but not when you have longer items.

I thought the whole thing would look cleaner and simpler in a vertical layout: question, answer, question, answer, and so on. Like this:

If you want to present matching questions in the same way on your Moodle, try adding the CSS given below in your theme settings:

.mform .fitem div.fitemtitle {text-align:left; float:none; width:100%;}
.mform .fitem .felement {margin-left: 0px;} 

(This works in Moodle 2.6. Not tested in other versions.)

Friday, February 26, 2016

Extracting user list filtered by enrolment method in a Moodle course

Imagine you want to invite two sets of people to enrol in a Moodle course. You want to place different limits on the enrolment numbers for each set. You can't use Moodle Groups in this case as it doesn't allow group-level enrolment caps (at least not in version 2.6). You can only place enrolment caps at the level of a self-enrolment method. So you'll have to create a self-enrolment method for each set of people. That's easy, but what if you want to extract users who joined the course using each method and perhaps do further analysis? It's easy to see these lists using the filters available in Users -> Enrolled users, but you can't download them (at least not in Moodle 2.6, which I use).

This is what you can do:
  1. Filter the required list of users in Users -> Enrolled users using the "Enrolment methods" filter.
  2. Hide all blocks on this page.
  3. Copy everything on this page using Control + A (on Windows). Yes, copy everything - all the stuff you need and all the messy surroundings. Quicker this way.
  4. Paste everything into Notepad or another text editor (not Word).
  5. Copy the Notepad stuff and paste into an Excel sheet. Now you should see a lot of stuff all in one column - don't worry about the mess. Just make sure it's all in one column.
  6. In the adjacent column, put this formula to extract all the email addresses and ignore cells that don't have an email address: =IF(ISERROR(FIND("@",A1,1))=TRUE,"",A1)
  7. Pull the formula down to occupy all the cells corresponding to column A. You'll then have a cleaner column with only emails but a lot of empty cells too. Copy all this and put into another sheet. Remove the duplicates (in Excel, Data -> Remove duplicates). And you should have a clean list of only email addresses.
  8. Repeat the above process for every page of enrolled participants (I see 100 people per page on my Moodle for step 1 - I'm not sure if this setting can be changed).
  9. Repeat the above process for different enrolment methods.
  10. You probably want more than just email addresses of the participants. Use the gradebook or activity completion report in your course to get a list of all users, add a column in that sheet to put in the enrolment method of each participant, paste the emails from steps 7 and 8 into a sub-sheet, and do a VLOOKUP.

Thursday, February 18, 2016

Checking on participants falling behind in a course on Moodle

There are at least two ways to do this. Easy way first:

Access the list of participants through the Navigation block on the course homepage or the People block if it's there. Look for the option called "inactive for more than" at the top of the participant list. You'll see some time periods going back to the beginning of the course. I'm now helping run a course that started on 1 February, almost three weeks back, so I see the following options:

Select an appropriate value in the drop-down list, depending on what you think counts as active participation. Then scroll down, click "select all", and then click "send a message".

Then write your message for these participants who have fallen behind -- make it an encouraging one! I would say it's a good idea to remind stragglers through this approach only once, ideally a week or so after a course begins. Then it's up to them to decide whether to come back to the course. If you keep writing to the same group of people, they're likely to get annoyed.

But what if you want to closely track who has done what in the course and send reminders to specific people, instead of a catch-all "inactive for X time" criterion?

Then the activity completion report is your friend. This is easy to get started with but requires some spreadsheet analysis:

Click the “Reports” link in the course administration menu block on the left and click “Activity completion” – you’ll see a table with icons denoting who has completed which activity. At the bottom of this table you’ll see options to download the table as a spreadsheet. Download this (a CSV file) and first save it as an XLS or ODS file so that you can use it for analysis, eg, spotting participants who have not done specific things in the course or have fallen behind. (Of course for this you would need to have used activity completion settings for the different resources and activities.) Then you would need to collect those participants' email addresses from the same spreadsheet and email them. Again, it's important to strike the right balance: reminders that are encouraging and get some participants back on track (you can't hope to win over all of them) but don't end up reaching the same people again and again with little effect.

Tuesday, February 9, 2016

How to not misuse the Moodle trademark: Tips for freelancers and small companies

This page at is quite clear about the Moodle trademark, but I guess many people have never seen it because it's over at and not, which is the default destination for Moodle users who're looking to download Moodle, chat on the community forums, read documentation, etc. Mary Cooch, a well-known Moodler, has written about her experiences with the Moodle trademark, and I've just written a somewhat preachy post about why misuse of the Moodle trademark is a problem. Forbes magazine says trademarks like Moodle and IKEA are the strongest kind of trademark, and I think this is another reason Moodle HQ is assertive about protecting the Moodle brand. But I bet this isn't easy as Moodle itself is free and open source software. Those with technical expertise can freely explore the inner workings of Moodle, become experts, and start selling services around Moodle!

So what do you do if you're a freelancer or small business owner who specializes in Moodle and you want to run your business without violating the Moodle trademark terms? This is something I've started to ponder about: although I have a full plate of Moodle work now, I am self-employed and I may want to sell services at some point in the future.

My suggestions for those who're in a situation similar to mine:
  1. See the links given above :)
  2. Be nuanced when you sell services related to Moodle. Try to avoid using the word "Moodle" in your service description.
  3. Look into contributing to the Moodle project. If you know a lot about Moodle, you can do a lot of good on the community forums. If you're a visible and helpful member of the community, you'll probably know what's the right thing to do when positioning yourself as a service provider.
  4. Moodle HQ does need a healthy and growing commercial ecosystem around Moodle, and every now and then new Moodle Partners are announced. These companies are allowed to use the word Moodle to sell services. If you employ or contract people to help you with your business, check out the Moodle Partner program application. In some countries there are already quite a few Moodle Partners and it could be difficult to become a new Partner, but there are few or no partners in many countries and regions.

Why misuse of the Moodle trademark is a problem

Moodle is open source software. It's free for anyone to use in any way. It's licensed under the most permissive of software licenses: GNU GPL. However, the word "Moodle" is trademarked. The trademark terms are clearly explained here.

Basically, you can freely use Moodle and talk about what you've done on your Moodle sites, but if you're going to sell services related to Moodle (eg, running a business that provides Moodle support in some way), you've got to be careful. For one, you shouldn't explicitly call yourself a "Moodle consultant", "Moodle service provider", or something that overtly shows that you're selling Moodle services. UNLESS you are a Moodle Partner company or have received permission from Moodle headquarters. That's my understanding at least.

The Moodle company (or Moodle HQ) is funded mainly by Moodle Partners (and perhaps the Moodle User Association will make a sizable contribution in the future). If individuals and non-partner companies rampantly sell Moodle services, there's a threat to the business model that funds the development of Moodle.

I don't normally get this worked up about trademarks and licenses, but here we're talking about free software (free as in freedom, not just price) that's used around the world by people who don't have to pay a cent to the company that made the software and yet can use and customize it as they please. The free software we're talking about also concerns education: a basic human right, not something arcane. Moodle being free software for educators everywhere is precisely why people shouldn't get too commercial about using the Moodle trademark for business without being allowed to do so. Someone who doesn't respect the Moodle trademark might not care about the Moodle philosophy which is central to the effective use of Moodle.

Of course, many educators who use Moodle need support with their Moodle sites, which is why there are Moodle Partner companies, and at many organisations there are in-house Moodle experts who're paid to work on organisational Moodle sites.

If you're a freelancer or small business owner and you specialize in Moodle, you may be interested in my next post which has some tips on how to do business without violating the trademark terms.

Monday, February 8, 2016

Back from the first MoodleMoot in India

Just back from the first MoodleMoot in India, and here's my Storify of the event. And below is my personal highlight of the event: I gave a talk about course design, which was captured in this tweet.

Tuesday, January 19, 2016

Converting URLs into links when you write in Moodle

On your Moodle site you may find that when you enter a URL (ie, web link) it appears in plain text and not as a link. To make URLs appear automatically as links:

First, go to...
Site administration -> Plugins -> Filters -> Manage filters
...and set “Convert URLs into links and images” to On.

Then, go to...
Site administration -> Plugins -> Filters -> Convert URLs into links and images
...and place a check mark against all the options next to “apply to formats”.

You might expect that URL auto-linking would happen by default, but Moodle provides a very fine level of control to do things and sometimes this can seem like a hassle! But it’s often easy to find a solution to do something in Moodle by searching online – you’ll probably see a helpful article in Moodle Docs or a discussion on the community forums. This is how I learn, and of course by experimenting!

Friday, January 15, 2016

When to not choose Moodle (and when to choose it)

Major universities around the world use Moodle, including The Open University in the UK (who also contribute to Moodle’s development). It’s a complex platform on which a lot of things can be done, and the downside is that those who’re looking to do only one or two things may find it too complex for their needs.

If you want to do only the below things, I would strongly suggest you don't use Moodle because you can do these with simpler or more focused tools.
  • Putting up content in the form of documents, videos, etc.
  • Having a discussion forum
  • Getting feedback from learners

But if you want to do some of the following Moodle is a great choice:
  • Develop interactive online content
  • Include learners in creating or adapting content
  • Develop quizzes with a huge range of options
  • Use learning analytics to get insights into the learners' experience
  • Maintain a set of discussion forums on different topics with different groups of people, which can all be easily accessed in one place
  • Orchestrate peer assessment activities
  • Use conditional access to develop a sequenced learning experience
  • Automatically award completion certificates based on criteria
  • And of course, develop proper online courses
You can do a lot more -- I wrote the above points in a couple of minutes without thinking too deeply!

Moodle is an online learning platform. It is not a tool, it is not even a set of tools. It's more than the sum of its parts! It gives you great power, so you have a great responsibility in creating Moodle courses that are optimal -- courses that don't underwhelm or overwhelm learners!

Thursday, January 14, 2016

Automatically link tips in a Moodle course or site

Imagine you want to include a bunch of tips somewhere in your Moodle course (or Moodle site) and you want these tips to be automatically linked whenever you mention the title of any tip, without having to manually include the link. Not only that, when clicked the link should bring up a small pop-up window with the tip, instead of redirecting to a new page. Sure, you can do that on Moodle.