Life on the edge of the moodleverse

Category Archives: Posts

Use of Block Badger


Imagine in a school site defining three courses: English, Drama and ICT

Each is delivering its own curriculum content and assessing students understanding through digital artifacts. These departments in particular are delivering and developing a variety of skills around movie making.

They want to document progress, motivate and reward students through a series of badges for a range of different skills

  • Scriptwriter
  • Filmmaker
  • Director

Each badge will be available at three different levels of mastery, say, apprentice, assistant and master.

Each badge, at each mastery level, could be earned from an assessment task in any of three courses – students will often work in groups and adopt different skills in different assessment tasks.

The following diagram shows

  • the configuration of the level 2 filmmaker badge
  • nicknamed ‘Assistant Filmmaker’ – the students will see the badge referred to by this nickname – internally badger knows this is a level 2 badge – and supersedes the level 1 Filmmaker badge
  • it’s part of a collection called Media – this is useful for pulling together badges defined in different courses for display in a block [example later]
  • the badge can be claimed from three highlighted courses – it can always be claimed in the course it is defined – here we make it available in two more courses [1]


Saving the badge – and then returning via the manage badges link, I get a review of my badge


The important thing to note (and maybe ctrl-c) is the claim URL that needs to be inserted into a course.

Here’s my course with some activities that need to be completed before I issue the badge.


I can add a URL to my badge – and mark it only available pending completion of one or more activities


Finally, on the front page I can:

  • add a badger block to display a students’ badges in the Media collection [I can show multiple collections also] and
  • in this example I’ve asked for some bar graphs of number of badges already claimed


This is my [test] site front page – notice the block displays the highest level badges the student has been awarded and place holders for the next available level [if one exists].



[1] Why is it important to list courses where the badge can be claimed?

In many sites, students are often editors of moodle courses themselves – if we made the badge link work from any course – students could backward engineer and insert unprotected links to the badges they desire.

There is also a built in restriction that stops editors of courses outside those indicated from adding new badges to an existing collection – again to stop students forging their own badges into a collection.


Moodle 2.3 Block Badger Beta Version Released

I’ve released a first version of block badger – now looking for willing testers and feedback …

Note that to install you need both

Badger: Simple Badge block

At the upcoming 21st Century Learning Conference Hong Kong [], Tim Carrell and I will be presenting the ‘Badger Block’; one of the more exciting projects I’m currently working on.

We are very interested in the gamification of Moodle utilizing the conditional activities of Moodle 2. We’ve also been looking keenly on the work being done on Open Badges []. The badger block aims to bring the two together and provide the teacher with a relatively simple method of providing rewards within a course and across a site.

The badger block displays awarded badges in a side block and placeholders for badges still to be attained.


Clicking on either gives a review of what the badge is for and the criteria for awarding the badge so

  • those who have it know why and
  • those who want it know how to get it.


As further motivation, the block can also display a bar graph to show popularity of awarded badges.


Badges can be pushed through to the student’s external Open Badges back pack so that achievements can be documented outside of Moodle and beyond the enrollment of the students in their current schools.


Teachers can upload a badge [any square png image] and assign descriptions/criteria.


Note that badges can be put into ‘families’ or given a level.

  • The block only displays the highest achieved level and a placeholder for the next level for badges with the same name.
  • Badges in a family collection can be awarded in different courses and a block can be configured in any course (including the front page) to show badges awards for a named collection. [By default the block just shows badges created in the local course]

After creating a badge, the teacher then adds a link (a Moodle URL resource) to their course – typically access to this link is restricted through the Moodle 2 conditional activities to ensure that a student has to complete one or more tasks before the link becomes available and the students and claim the badge.


There are, of course, appropriate checks to ensure students cannot forge a badge URL to claim a badge they don’t yet deserve 🙂

Teachers can review issued badges to see who they have been awarded to and delete badges not yet issued.

Badges that have already been issued can be retired but not deleted; data about the badge is retained since the badge may already have been pushed to an external back pack – similarly an issued badge can be revoked from within the Moodle but it cannot be pulled back from an external backpack]


Initial pilots are underway and there seems to be a positive reaction to ‘badging’ from students.

I’d be interested in any feedback – and if there is demand I will try and find time to arrange a code release to git hub.

NB: there is a [moodle partner] group working on integration of open badges, moodle and mahara [details] but we didn’t want to wait 🙂

Are these customisations available?

The quick answer is not yet [sorry to disappoint the many people who have asked].

I’m primarily sharing the ideas to hopefully inspire others.

The work is based on a very non-standard moodle 1.9.5 platform – it would take some time to develop a ‘pure’ moodle version. I’m not sure that time is worth spending on the ‘dying’ 1.9 moodle platform and I have two jobs that have to take first priority on my time.

However, in the next couple of months I have to start rewriting 6 years of customisations for the move to moodle 2.0 [can’t put it off any longer].

This would give me a chance to rework modules into more readily released format – so I am trying to gauge what interest there is in our work.

In short – if you like the things you see – let us know [leave a comment below] and we’ll factor that into our upgrading considerations.


I once spent about half an hour teaching some willing, but not-at-all IT confident, teachers how to upload a file resource – they then spent 30 minutes trying to replicate the many steps for themselves – navigating through a number of advanced [and hence for them superfluous] options and getting into numerous pickles.

One of the teachers concerned loved the idea of making years’ of worksheets and resources she’d built up more accessible to students by putting onto our moodle – but she couldn’t face what for her would have been a quite tortuous process.

This was the inspiration for a module we called QuickContent. It allows content to be put into a moodle course with a minimal amount of input, e.g.

  • just select the file for download-able resource
  • just give the URL for recommended web page
  • just give the name of a dropbox

Quickcontent is a ‘hack’ which by proxy creates an instance of the actual resource/activity required – this can be subsequently edited by more advanced users just as any activity created via the conventional route.

Without doubt, the Quickcontent customisation has been the most successful of all the modifications we have made, making moodle accessible to all teachers [regardless of confidence level] and speeding up the process of course development.

This has been important in supporting a requirement for all subjects/years to have some moodle presence to support student learning.

QuickStructure Block – swerving the moodle ‘scroll-of-death’

Quickstructure is a custom block that developed out of a desire to:

  • make it easy for teachers to add colour heading strips and thumbnails to course sections
  • allow students to use a visual menu to avoid the moodle ‘scroll-of-death’

The following 2 min video shows [real time], how quick a course can be formatted using the quickstructure block [granted I’ve done some of the hard work by having the images ready to go 🙂 ]

Social networking the school bulletin

In a vibrant school of 1600 students and 200 staff, communicating everything that is going on is a challenge.

We are increasingly using our VLE landing page to deliver important information – on average we get two hits per user per day on this page so it is useful real estate.

Students and staff are allowed to submit 600×120 banners for events – these roll at the top of the page [starting at a random point in the sequence on each page load]

Bulletin items are tweeted out [@kgv_bulletin] – but to really take the message to the kids those tweets are also picked up by a facebook fan page – thus bulletin items appear on the students’ Facebook walls. Cool?

Notice – we’ve been tweeting from kgv_bulletin for a 2 weeks – and routing to Facebook for two days. Already facebook has a greater following!

NB: this video is taken in the first day of the summer holiday – nice and quiet!

NB: For those interested I used the RSS Graffiti Facebook plugin to get Status updates in my fan page from our twitter feed.

What’s it all about?

My intention with this Blog is to share some of the ideas and work I’ve been doing with moodle at my school (King George V School) and within the English Schools Foundation (ESF) here in Hong Kong.

I am [or I guess I was] a teacher/Head of ICT for 17 years, first in the UK before moving to the wonderful city of Hong Kong. However, in recent years I’ve been working on development of Moodle extensions and customisations full time on a sabbatical.

I’m not the best coder in the world – my Computer Science PhD was a lot more theoretical than practical – but where I’ve been successful [IMO] is in marrying my technical skills with knowledge of [secondary] school learning and teaching needs. Hopefully some of the work I intend to display here will illustrate that point.

I consider myself to be very lucky to be working within a school where staff are largely open minded [and good humoured]; where staff feedback regularly on how our VLE can be improved and enhanced and where I can see examples, on a daily basis, of staff and students using the various enhancements I’ve created.