Category: Hack/Doc Fest at Swarthmore

Winter 2023 Hack/Doc at Swarthmore

Paper sign taped to glass door
Kohlberg Hall, our home away from home for the next three days

CLAMP returned to Swarthmore College for three days of intensive evaluation of Moodle 4.0 and Moodle 4.1. Overall, the group’s impression of Moodle 4.0 and 4.1 was favorable, echoing the impression of the Summer 2022 Hack/Doc at Carleton College. We also did not discover any unpleasant surprises with the upgrade process. Read on below for details of the various issues we discussed.

Text editors

A quote from King Lear typed into a text editor
TinyMCE 6.x in Moodle; it’s possible to disable the icon. Note the word count and contextual formatting.

Atto, a rich text editor developed in-house by Moodle, has been the default since Moodle 2.7. TinyMCE has been available as an alternative. Moodle is now changing course, and TinyMCE 6.x is now available on Moodle 4.1, and will eventually replace Atto as the default text editor. There are now three text editors available on Moodle:

  • Atto HTML editor
  • TinyMCE 6.x (branded as TinyMCE HTML editor)
  • TinyMCE 3.x (branded as TinyMCE HTML editor (legacy))

Overall TinyMCE provides a more streamlined experience than other editors. One feature we liked was that you can select a block of text and then use a pop-up menu to apply formatting, similar to Tumblr and WordPress. There are a few things to note:

  1. You cannot apply font colors to text. This follows from Atto, which significantly limited the available colors on accessibility grounds. It does not sound like Moodle intends to change this behavior.
  2. Embedding links to documents and images aren’t properly supported yet; it will be in Moodle 4.2 (MDL-76520). CLAMP may backport this fix to Moodle 4.1 if there’s interest.
  3. The site administrator cannot configure toolbar buttons, as you can with Atto and TinyMCE legacy. Moodle recommends using capabilities instead. CLAMP is working on a list of these.
  4. When copying and pasting from Microsoft Word, TinyMCE properly cleans up all the custom CSS.

CLAMP does not recommend making TinyMCE the default until the link plugin is available, which should be in Moodle 4.2 or sooner.


Menu showing topics that can be dragged and dropped to re-order them
Dragging a topic on the left-hand navigation menu to change the order.

We noticed a number of interesting changes to the default Boost theme:

  • Boxes can be removed by switching from default to plain in appearance
  • Menu items at the top can be customized in Boost admin settings
  • Sections can easily be rearranged in the Navigation menu, and this will renumber the Topics accordingly
  • The Navigation menu shows items within topic sections
  • The Block drawer is on the right and collapsed by default
  • A collapse/expand option is available at the top of the course, but not in the Navigation menu
  • The new move option (in the vertical three dots on right) is MUCH easier to use
  • You can easily show/hide the Navigation menu (left) and block menu (right)

Gradebook reports

The grade book has a new Single View interface. The functionality is the same as Moodle 3 but the navigation and some of the behavior are different. Single View has more descriptive navigation but may take more clicks to get where you want.

You can select or search for users or grade items. You need to turn on editing (top right) to make changes to grades (this is a change from Moodle 3). Overall there are more steps than in Moodle 3 but possibly clearer for new users. You have to find the override/exclude options under the Actions menu instead of at the top of the table, which may be more mobile-friendly.

Upgrade testing

We did not experience any significant issues upgrading a Moodle 3.11 instance to Moodle 4.1. CLAMP has published a Google Sheet showing the various supported versions of PHP, MySQL, MariaDB, and PostgreSQL.

Swarthmore vs Swarthmore

CLAMP investigated whether to pronounce “Swarthmore” with or without the first “r” before turning to more profitable tasks, like extra credit calculation in the gradebook.

Reverse chronological order

There was some discussion around ordering topic sections in reverse chronological order. This is popular at Bucknell University. This is a manual setup: Instructors create topics in reverse order. For example (in a ten-week term), Topic 1 will be Week 10, Topic 2 = Week 9, etc. When the topics are created, instructors can set Restrict Access to a Date and time, which will then be automatically shown after said date/time. Asynchronous (and possibly synchronous) instructions will be needed. CLAMP also discussed the possibility of a small plugin that can do a one-time reverse-ordering of topic sections.

Database presets

The Database activity has new presets that may make it easier to use for journals and other uses such as diaries. Presets simply create the fields for you, but they can be updated and more can be added after the fact – no other settings are affected by the presets. Moodle comes with the following presets:

  • Image database preset – fields are title, image, description (alt text is a forced field, but you can’t make it required) (for those using Domains, this might be a decent substitute for an image-based splot)
  • Journal preset – entries are not private- all students see all other students’ entries. Date shows up at the bottom of the entry. This makes it less useful as an actual diary for personal use unless moderation is turned on and the instructor doesn’t approve anything.
  • Proposals preset – fields for title, summary, and content and then a field for whether or not it was approved (presumably for the instructor to update)
  • Resources preset – fields are title, author, cover (image), description, weblink, drop-down (type of resource – have to go in and edit the dropdown items manually) (useful for a group resource creation assignment).

Course reuse

We revisited the new Course reuse page, which we also discussed at Carleton. Import, Backup, Restore, Copy course, and Reset are all grouped under the “Course reuse” navigation item in the Course navigation. Navigating there brings up the Import page; the other pages are available from a drop-down at left. You may want to customize the “Course reuse” language string, which you can do by navigating to Site administration > Language > Language customization > English (United States) ‎(en_us)‎ > Open Language Pack > moodle.php  and then searching  “Only strings containing” with “reuse”.

Label, we hardly knew ye

Our old friend the Label resource has been renamed to “Text and Media area” (MDL-72531). It still behaves as it did before. One important note: when you have editing enabled, the label is listed in the left-hand Navigation menu, for easy manipulation. It’s listed using a truncated part of the text. If you duplicate it, the duplicated item appears in the navigation with the same text and (copy) appended. You will then need to modify the resource to update this. The students won’t ever encounter this issue.

Activity instructions

Moodle Assignment now has two separate text boxes for description and instructions. The (?) icon describes instructions this way:

The actions you would like the student to complete for this assignment. This is only shown on the submission page where a student edits and submits their assignment.

  • Descriptions can be displayed on the course page or within the module
  • Instructions are only displayed once a student “Adds a submission” or “Begins assignment” (timed)
  • Instructions can be used if you want to hide a prompt until a students starts an assignment
    Or give nitty gritty details: upload in a PDF format, title you file X, etc.

Event monitoring

Sharon Strauss from Haverford presented on Moodle’s event monitoring feature. This is not a new feature in Moodle 4.1 but many of the attendees were unfamiliar with it. Moodle defines numerous events that can be triggered, such as for new forum posts, or assignment submissions. With the event monitoring feature, you can allow teachers and administrators to subscribe to given events and receive email notifications. This is separate from any other built-in notifications.

Tour of Swarthmore’s facilities

Michael Jones, the Director Of Language And Media Centers\Makerspace at Swarthmore, kindly took the Hack/Doc attendees on a tour of Swarthmore’s instructional spaces. We visited a classroom equipped for active learning, a podcasting studio, a studio equipped for recording remote lectures, and a maker space.

What’s next

CLAMP will release a beta of Moodle 4.1 with the Liberal Arts Edition towards the end of January. The regular LAE releases will come out the week of January 16th. The next Moodle Hack/Doc Fest, focusing on Moodle 4.2, is tentatively scheduled for mid-June 2023, location to be determined.

Registration open for Winter 2023 Hack/Doc Fest

Fall foliage and Parrish Hall on the campus of Swarthmore College on Tuesday, Oct. 29, 2013, in Swarthmore, Pa. (Laurence Kesterson / staff photographer)

Registration is now open for the Winter 2023 Hack/Doc Fest, which will be held at Swarthmore College from January 10 through January 12, 2023. CLAMP’s Hack/Doc Fests are twice-yearly unconference-style events dedicated to improving the Moodle experience for liberal arts colleges. The main focus of this event will be upgrading from Moodle 3.x to Moodle 4.x.

Hack/Doc at Swarthmore: Day 3

People sitting around tables
Hack/Docers hard at work in the CLAMP Executive Lounge. Photo credit: Charles Fulton

The last day of Hack/Doc, as usual, was a bit shorter due to attendee travel plans. We wrapped up around lunchtime after some discussions about Moodle 3.8 and accessibility.

Forum grading accessibility

We logged a third and final issue with the new forum grading tool and accessibility: MDL-67663. Again, some of these issues are specific to the tool, which some are broader problems with Moodle itself. We’ll continue to monitor the situation. A major related issue is MDL-64494, where Moodle core is tracking project-wide color contrast issues.

Filescan block

We discussed the future of Swarthmore’s “filescan block“, which evaluates the accessibility of PDFs uploaded to Moodle. Several schools, including Hampshire and Lafayette, have been using the block on their Moodle instances. CLAMP is going to organize a workshop this winter for interested schools to come together to develop a roadmap and implement changes, which an eye toward publishing the plugin on the Moodle plugins repository and incorporating it into the Liberal Arts Edition.


We have released a new version of the Roster report; you may now configure which fields are displayed for each student, including custom profile fields. This release is available on the Moodle plugins repository and will be incorporated into the next release of the LAE.

And that’s a wrap for this winter’s Hack/Doc at Swarthmore College. Warm thanks to Andrew Reuther and Swarthmore for their outstanding hospitality this week. If your institution is interested in hosting a future CLAMP event, please consider filling out our host interest form.

Hack/Doc Fest Winter 2020 at Swarthmore College: Event page | Day 1 | Day 2 | Day 3

Hack/Doc at Swarthmore: Day 2

Buildings beneath a blue skyline
View from the top of Singer Hall. Photo credit: Charles Fulton

Work on the task list continued during Day 2 of the Moodle Hack/Doc Fest at Swarthmore College, interrupted only by an expedition to the Solar Lab on the roof of Singer Hall, which provided a commanding view of Swarthmore’s campus and Greater Philadelphia.

From the task list

We continued to work on yesterday’s tasks and added a few new ones:

LTI integrations: Perusall

Perusall is a social annotation platform. Launching from the LTI module in Moodle will place one into a workflow to create their Perusall account on the fly. It’s important to set the launch container to Existing Window or New Window or it won’t work. The default launch container can be edited for the LTI module in the site admin. Student Perusall accounts are created as students use the tool. The tool also automatically creates an entry for the student in the gradebook with a grade of 100. The service is free for those using their own texts (e.g., PDFs or OERs), but texts available through Perusall require payment as does the ability to brand it for one’s institution.

LTI integrations: Google Assignment

Google Assignments allows you to create and share coursework within the LMS using Google Drive. It wasn’t clear if enrollments/permissions are managed dynamically. When creating from LTI, the grades appear in the Moodle gradebook automatically. The question bank is pretty good; other nice features include a plagiarism tool, the ability to grade all and then submit all at once, rubrics, and the ability to convert Word documents and PDFs to Google Docs while preserving the original. One caveat is that Google Assignments created through the LTI will not show up when going to, and vice-versa.

Moodle Mobile app

Following on from yesterday’s equivocal evaluation of the Moodle Mobile app; it’s best to think of the app as a consumption tool and not a creation/editing tool. It’s certainly student-centric while allowing instructors the ability to grade some items. There is no wholesale gradebook access for instructors, but there is for students in the menu item that looks like an analytics logo. It’s important to manage expectations if your institution decides to roll it out.

Moodle 3.8 review

Michael Harris from Bryn Mawr College encountered a problem that, as far as anyone can remember, is unique in the 10+ years of Moodle Hack/Doc Fest: Moodle’s JIRA tracker has a built-in limit which prevents you from reporting more than one new issue per hour! Michael had been meticulously documenting accessibility problems with the new forum grading feature. Two have been reported so far (MDL-67652 and MDL-67655), with more on the way.

The Course Overview block now supports filtering based on, among other fields, custom course fields. For example, you could create a custom course field named “department”, and then allow teachers to filter based on the department in their dashboard.

Course Merger Helper

Courses created with the Course Merge Helper were not receiving all the default course settings unless the school was using the local course template plugin. Examples of incorrect behavior included no sections in the new course, or the gradebook enabled when it should be suppressed. We’ve squashed this bug and released a new version of the plugin.

Hack/Doc Fest Winter 2020 at Swarthmore College: Event page | Day 1 | Day 2 | Day 3

Hack/Doc at Swarthmore: Day 1

Wayfinding signage on a glass door
Wayfinding for Hack/Doc and the CLAC HPC Mindshare. Photo credit: Charles Fulton

The biannual Hack/Doc Fest is being held at Swarthmore College in Swarthmore, Pennsylvania. The event kicked off on Wednesday, January 8, 2020, and runs through Friday, January 8. The following tasks are queued up for Hack/Doc (very much subject to change):

  • Evaluating Moodle 3.8, which was released last November
  • Improving the Roster report to support pronouns
  • Taking a fresh look at the Moodle Mobile app
  • Improvements to the file accessibility block

This year the Hack/Doc Fest overlaps, physically and otherwise, with CLAC’s high-performance computing (HPC) mindshare, taking place on the lower level of Singer Hall. Rumors of superior lemonade at the CLAC craft table may–or may not–have led to direct action around lunchtime.

From the task list

Moodle 3.8 Liberal Arts Edition release

The first Moodle 3.8 LAE release is ready for testing. Moodle core continued its revamp of the forum module, which began with Moodle 3.7. Fortunately, this required far fewer changes to Anonymous Forums this time around!

Moodle 3.8 review

One new feature in Moodle 3.8 is the ability to grade forum posts. Evaluating this feature produced Hack/Doc’s first bug, a browser conflict in Safari. That issue aside, and presumably it’ll be fixed soon, the feature is a significant improvement over the old workflow. It presents a user-by-user view of forum posts and presents the teacher the ability to give that user a grade for the forum, based on their contributions. It’s very similar to the assignment grading view. The forum also supports a nested view of the discussions now. This appears to work as expected showing primary forum posts with the nested post, open and visible below. The threaded view shows the reply post below the original but it is closed and only viewable by clicking to open it. This worked in the Mobile app as well.

Moodle has also taken the first steps toward core support of H5P. H5P is an interactive, web-based content authoring tool, and a perennial subject at Hack/Doc Fest (Brandeis, Hampshire, Lafayette). At this point, the core support complements the existing H5P activity plugin, rather than replacing it outright. The new core functionality allows you to add H5P content to Moodle as you would a page or a label, but you can’t yet use it to author content within Moodle. It also adds an Atto button for easier embedding. For now, if you’re already using the H5P plugin, you’ll want to keep doing so.

Moodle Mobile app

No one’s quite sure when CLAMP first kicked the tires on Moodle’s Mobile app (there have been several), but it may have been at the Winter 2012 Hack/Doc at Tulane, where we described it as “lackluster.” We’ve looked at it off and on since, and a number of CLAMP schools now have it enabled and report few support issues. This time around we noted a few positives and challenges:

  • There are some accessibility challenges related to color contrast. It may be possible to mitigate these with a custom CSS file.
  • The default behavior is still to sync changes on Wi-Fi only, but it’s possible for the user to change this behavior.
  • Assignment submissions worked well.
  • Login with institutional single sign-on is smooth and the login persists.
  • Push notifications have to be configured server-side and there’s a lot to review there.

The consensus in the room was that there was no downside to turning on support for the app, though no one planned to make a big push to encourage adoption.

Roster report

We discussed ways to make the Roster report more flexible, and Sharon Strauss from Haverford raised the possibility of giving it a capability similar to Name Coach, which allows students to record the pronunciation of their names. One option would be to have a custom field with the attached audio, which could then be exposed via the report.

Hack/Doc Fest Winter 2020 at Swarthmore College: Event page | Day 1 | Day 2 | Day 3