Hack/Doc at Hampshire: Day 1

Charles Fulton presenting at Hack/Doc
Charles Fulton presenting about admin tool plugins at Hampshire Hack/Doc. Photo credit: Sarah Ryder

At Day 1 of Moodle Hack/Doc Fest at Hampshire College we began tackling the task list hashed out during Sprint Day. With such high attendance the day was incredibly productive and full of good conversation.

Lunchtime Presentations

Jason Simms from Lafayette College told the group about an idea that has been percolating amongst several CLAMP members for quite a while now. The idea is for CLAMP to consider offering an event to complement and extend the traditional Hack/Doc, something that will offer a broader array of topics more generally applicable to those working across the spectrum of information technology, web and backend development, and systems administration. Jason created a survey for CLAMP schools to indicate their interest in such an event, in addition to providing technical details about their Moodle environment in an ongoing effort to collect such data about our member institutions.

Kevin Wiliarty from Hampshire College provided some insight about the Moodle quality assurance testing process and strongly encouraged attendees to get involved with Moodle QA. Some of the benefits include:

  • Exposure to and understanding new features in Moodle
  • Getting to know the Moodle Tracker better
  • Earning a badge

If you want to get involved, send Helen Foster a message to indicate that you’d like to be a tester.

Charles Fulton from Lafayette College provided a brief show and tell of a few plugins developed at Lafayette.

  • Creating a course template for new courses (based on course ID)
  • Admin plugin tools (delete all courses in a category, hide all courses in a category)

From the Task List

Course Overview Block Bug

  • Hidden courses will still present their overview items
  • It’s been reported and there’s already a fix in the pipeline.

Poster Plugin Evaluation

  • In the Clean theme, the “add a block” menu is now at the bottom of the left frame of the poster plugin, once you’ve turned editing on and gone into the activity.
  • It’s not immediately obvious that you have to add blocks and then drag them if you want them in the right side of the activity, but again, that fits with how blocks have behaved before.
  • A handful of the available blocks will seem to “disappear” if editing is turned off and they haven’t been configured yet. Two other blocks (activity results, remote news feed) are visible in their unconfigured state (with a line of text instructing the user to configure them) but if they are then configured in such a way that there is no content to display, they will also seem to “disappear” when editing is turned off. In both cases the blocks are visible when editing is turned back on, but this behavior can also change the arrangement of the visible blocks on the page. This could be confusing or frustrating for faculty with a particular look in mind.

H5P Integration

  • Backups are slow with H5P
  • H5P roadmap
  • Allows one to create interactive “bits” or “widgets”
  • None of these H5P widgets, as we can tell, are accessible though H5P is “working on it.”
  • Can be authored directly in Moodle, which is somewhat compact, or they can be authored at H5P.org and embedded into Moodle using iFrame.
  • You can also author and download a .h5p from a WP instance running the WP h5p plugin, in case creating a user on h5p.org is a headache.
  • H5P: creates a column in Moodle Gradebook.
  • This tool can be integrated into “Book” as pure content, but it will not create a column in the grade book.

Lightbox Gallery

  • A rotating issue was reported to GitHub
  • Nice captioning, if short and sweet
  • Captioning is used as alt text, which means a screen reader reads it twice
  • Screen reader doesn’t read the lightbox, but reads the layer below.
  • Uploading en masse isn’t very intuitive because it requires a ZIP file

Downloading Files

  • A developer at UMass wrote some code to provide functionality for downloading all of an instructor’s files from a course. It had originally been implemented as a core hack so Charles spent some time putting it into a plugin and is checking in with the original developer about sharing it.
  • Some folks did some work on an existing python script used to extract files from a Moodle course backup and put them into a folder structure along with an html page linking to the items.

PCast Plugin

  • Hard to understand why this gets good reviews. 🙂
  • Cannot generate the podcast within the tool.
  • Discovered URL downloader in the File Picker. Not really sure what it’s used for.
  • Can import iTunes/RSS feeds


  • Can create custom preloaded content to preload contact information.
  • It’s a button added to the Atto toolbar.
  • Only site admins can create the snippets.

Course Merge Helper Tool

  • Making improvements: moving child courses into a different area

Automatic Display Setting in the URL Resource

It appears that the behavior is dictated by the presence or absence (and type, if present) of a final file extension in the URL provided.

  • No final file extension: link opens in the same tab
  • .jpg, .png, .gif, .mp3, .htm, .html, .php, top-level domain (.com, .net) or last character of URL is a “/”: bridge page with link (.htm, .html, .php, or /) or embedded media (for .jpg, .png, .gif, .mp3)
  • .wma: download prompt
  • The presence or absence of a “description” for the link resource has nothing to do with whether the bridge page is produced.  If a description is included but the display option is not checked, it will not be visible anywhere.
  • While creating a URL resource, if you choose “Save and display” instead of “Save and return to course”, you will be shown the bridge page whether or not this page will be actually produced when the user clicks on the link.

PDF Annotation

  • The PDF Annotate pane continues to display and tries to render a PDF even if there is no submitted file, and even weirder, when the assignment does not permit the uploading of files.

Moodle 3.3 Review

Better Office Integration is actually -not- Microsoft specific. G-Suite and Office 365 are the initial targets, and the dev page indicates that this is a cleanup and improvement of many small things, such as a simplified way for admins to enable/disable integration. It also includes: oauth SSO, file picker integration, admin settings to copy or link external repo files, offline linked files for Mobile use, backups of linked files into course backups, etc.

FontAwesome looks to be baked into 3.3–provides AAA accessible-rated icons. This feature is available for themes that support it. The More theme does not support FontAwesome icons.

Emoji support wasn’t working out of the gate; it looks to require utf8mb4 and needs a database update. More info on installation for the database.

Setting a ‘Grade by’ reminder (for teachers) only appears in the Course Overview area. It doesn’t send an email notification.

Specify assignment file types seems to work as expected. Acceptable file types can be added by extension, separated by comma or semicolon.

Collapse comments in assignments works as expected…mostly. The only complaint is it seems nearly impossible to know where the collapsed comment is going to appear on the document. It looks like it appears in the vertical center of the expanded box, but the expanded box can grow from the original box drawn.

Drag and drop media works well aside from always center aligning the audio player; it doesn’t seem like one can change this behavior. Audio and video can be displayed in the player on the course page or linked to from the course page as a web page.

Stealth activities were tested and work as intended.

More tag areas allow for glossary entries, forum posts, and book chapters to be tagged for easier searching.

Discussion Topics


  • Competency framework should be developed prior to implementing within Moodle and should have short naming conventions along with a description to each one
    • ID# or Short-name
    • Taxonomy:  Each competency created should also have 4 levels of taxonomy aligned to it as well identifying what type of learning activity that is being assessed
    • Scale type: there are two types the default and separate and connected ways of learning
      • Decide on default scale values, ie: not completed, competen
    • They can be aligned to forums, assignments, activities (I’m trying to align that in 3.3 which I am having a problem seeing it, but it does in 3.2)
  • Learning Paths should be created once the competencies have been created.

How do we use tools outside of Moodle?

  • Integrate or embed a la H5P or Zoom
  • Echo360
  • Lynda.com
  • Mahara
  • Articulate
  • Camtasia

Boost: how are folks using it?

Based on our conversations this morning, no one is using Boost and no one looks to be interested in making the switch just yet. There are some pain points for developers, particularly the need to clear the cache each time an update is made to the theme.

Adopt the All or Nothing Question Type?

  • Butler is evaluating qtype_multichoiceset, which improves on the core multi-answer multiple choice question. The current author has abandoned it and is looking for a new maintainer. Butler is interested, but relatively new to Moodle plugin development.
  • Several of the developers huddled about this. The consensus was that if Butler should proceed and adopt the plugin, CLAMP’s developers would provide assistance and support. CLAMP would consider incorporating the revised plugin into the LAE once the plugin was brought up to specification, given sufficient interest from CLAMP members.

Moodle Dev Roundup

Several newer-to-Moodle hackers huddled in a conference room with several veteran Moodle hackers to discuss best practices for Moodle developers and how to contribute back to core.

Posts from Moodle Hack/Doc Fest, Summer 2017 at Hampshire College: Homepage | Sprint | Day 1 | Day 2 | Day 3