5 Moodle 2 features that waste admin time

Moodle 2 has introduced some useful features that make administration easier. The search admin option, docking, AJAXified search of user lists, permissions setting, etc.

But at the same time, it left important things out and/or made others more difficult. Some of these must be through inattention and some through making assumptions about how Moodle is used in different contexts. Here are the five things that drive me nuts. I suspect that collectively, these have wasted years of Moodle admins’ time all over the world.


1. User management

There are 3 features of user management that drive me nuts! I can’t imagine that any Moodle developer actually spends any amount of time managing complex courses with lots of students (without LDAP). Or maybe they just have a higher pain threshold.

  1. The actual user search feature is a joke. It gives a plenty of filters to search by but it sets them permanently. Meaning that every time I want to do a new search, I have to clear the existing filters causing a page refresh. We have AJAXified searches elsewhere in Moodle now. Why not on this page? Plenty of libraries exist for that.
  2. Speaking of AJAXified searches. They’ve been introduced on the role assignment pages. But there is a hard limit on how many results they return. Sometimes, I need over 100 results (yes, we have courses with more students than that). But there’s no way I can get them now. If I search for a criterion that gets me 101 results, I get NO results.
  3. User role labels is something that is sorely missing. We had to resort to making the student’s course a part of their last name. E.g. Smith – Course A, March 2012. Otherwise, we can’t assign them all at once. You can choose a field to be a part of the user name display. But not a custom field, where I’d like to actually put it. It wouldn’t even have to be displayed by the student’s name, if I could search by it!
  4. It might be asking for too much, but it seems ridicculous that there’s no way to assign a student to a teacher. We have many courses taught by groups of tutors who have multiple students each. One place where this is a problem, is notifications. All teachers get all notifications of all students’ submissions. They should really only get the ones from their students (or get a choice). There’s a partial workaround for this using groups but it only solves the problem if all activities are set to separate groups. Which most of our courses don’t do.
  5. It should also be possible to change the role assignment of multiple people at once.

2. Course editing

a. Topics, Sections, Weeks

Moodle should really have purpose agnostic sections. Just naming them Topics or Weeks by default makes things really difficult. For example. Pretty much every course I’ve created in Moodle has an introduction that requires its own section. So we have to use Topic 1 for that. But then the actual topics are being numbered are different numbers than the hard coded topics.

To add insult to injury, there’s a block that gives you links to topics with numbers. But they are called Sections, there.

Plus when you need a new topic, you should have a button that says “Add new topic” or another one that says “Delete this topic”. Going to course settings to increase the number of topics is not only unintuitive but results in having to drag topics around. Which can be a real pain in a long course.

b. Labels must DIE!!!

One of the most evil parts of the Moodle course design tools is the Label. Course creators use them and feel they couldn’t live without them but they are just about as good for them as a VAT of sugar is for a diabetic. The problem is that labels always describe something but Moodle has no way of knowing what. They just float in a course.

This has at least 2 consequences:

  1. When you move about parts of a course, you have to move the labels separately from what they describe. It’s really easy to mess up your course layout by accidentally dropping a label you’re dragging in the wrong place. And unless you know the course really well (you may not be the original creator), it maybe quite difficult to arrange it properly.
  2. When you’re importing parts of a course to another course. The labels are all listed separately from the things they describe so you have to remember which ones need to be imported.
  3. Course editors start using labels instead of pages to give reams of insturctions, thus exacerbating the scroll of death problem.

Labels should be attached to the thing they’re labeling. There’s already a field for this but it can only be displayed on pages listing activities and not the course page where it belongs.

I understand that this may be an option in Moodle 2.3. It can’t come soon enough.

c. Editing clutter

People have spoken about “editing clutter”. Stuart Lamour has a solution to it. There’s no need for discussion. We should just use his way instead.

d. File uploads

…are an abomination. But I understand that drag and drop uploads created by Davo Smith are on their way in in Moodle 2.3. Yoohoo!

3. Cohorts and groups

Moodle 2 was supposed to give us the feature of site-wide groups. It was one of the main reasons we switched.

Instead we got cohorts, which is at best a half-baked solution. There are a lot of things wrong with the way cohorts were implemented.

  1. They are organized by category but have no one interface where they can all be seen at once. This means, if you don’t remember where you put a cohort, you have to check every category. So we just make them all site-wide resulting in a cluttered page. (BTW:  The Assign link should really be called “Users” and the “Edit” link should be “Settings”.
  2. Cohorts cannot be automatically assigned to categories. We run really complex courses that would make the scroll of death into a holocaust if they were actually placed in a single course. So for us, many categories actually function as courses, and courses as modules. So it would be really handy if we could sync a cohort with a category (just like in the old days when you could assign roles to a category). Instead, we have to perform a task 5 to 6 times that we only had to do once before (unless we want to use a deprecated feature).
  3. Cohorts can be synced with course groups but only once. If you make a change to a cohort later. A synced group will not update. This actually makes a certain amount of sense. We may move a person to a different cohort but want to keep them in the same group in all the old courses so that they can access their work there. But that makes the cohort/group sync feature largely useless. What we need is subcohorts that can be created site wide but whenever they are in a course that has the group option enabled, they are automatically kepts uptodate with the group.

4. Forum management

Forums are one of Moodle’s strong points. But they are a very outdated in their interface. This is as much a user UX as an admin UX issue. There really needs to be a dashboard somewhere, where all the latest forum activity can be managed.

5. Course backup and restore

  1. At the moment the process of backing up and restoring (or cloning) courses is a hodgepodge of usability pain. I mentioned the problems with importing labels above. But there are simply too many screens to the process that you mostly just have to click through. There should be some sensible defaults with override options. In fact, you can set the defaults but you still have to go through multiple screens.
  2. The other problem is that there’s no central location where all backups and can be managed. You always have to go inside a course or to the front page to do it. This is not the worst thing in the world but it’s another thing to know about and work around. It should really be possible by category.

Bonus gripe: Clean URLs

Oh, and here’s a bonus annoyance: Clean URLs. Moodle should really have a clean URL system that can provide short URLs for all objects. E.g. moodlecourse.org/c/erwjlkj34234 or /c/shortname/forumname. At the moment, when a student sends us a link for support, we have no way of guessing where it might be from. And more importantly, links sent by email are often broken.


Moodle has long focused on functionality and now it needs to focus on usability. Both Drupal and WordPress went through this process and came out better for it. This cannot be done bit by bit. There needs to be a one project that will have UX specialists do the whole thing. Drupal.org redesign was a great example of how this can be done. Luckily, things seem to be moving in this direction.