Tag: atto

Summer 2025 Hack/Doc Fest at Swarthmore

Metal gates leading to a well-tended garden
The Dean Bond Rose Garden at Swarthmore College

This was CLAMP’s third visit to Swarthmore College, but the first time we’d gone there during the summer (see the 2020 and 2023 reports). After some rain on Tuesday morning, good weather moved in for the rest of the conference. Points of interest on campus included the Scott Amphitheater, the Dean Bond Rose Garden (pictured above), and “Crumhenge“, a Stonehenge-inspired art installation along the Crum Creek trail.

Indoors, we evaluated Moodle 5.0. The consensus among the attendees is that schools planned to upgrade to Moodle 4.5 for the forthcoming school year and give the Moodle 5.0 series (see below) time to develop. Please read on for a discussion of issues at this summer’s Hack/Doc Fest.

Issues specific to Moodle 5.0

Question Bank

We have a separate blog post detailing the various changes to the Question Bank in Moodle 5.0. These are over and above the fixes for the Question Bank import issue that CLAMP flagged in February. The short version is that courses may now have multiple question banks, questions created in quizzes may not be shared, and category-level question banks have been eliminated. Please see the linked post for further details and recommendations.

Version numbering

Moodle has a new version naming convention starting with the Moodle 5.0 release. In terms of the operational calendar, we can expect a new long-term support (LTS) release in the October of even-numbered years, and new major features in the April of odd-numbered years. Read on for a fuller explanation.

Previously, the first two numbers indicated the major version of Moodle, while the third number indicated the minor version. So, Moodle 4.5.0 would be the first release of Moodle 4.5, while Moodle 4.5.3 would be the fourth release of Moodle 4.5.

Going forward, the first number will indicate a series, the second number a version within that series, and the third number the patch version. Therefore, Moodle 5.0.0, released in April 2025, is the first release in Series 5. Moodle 5.0.1, the first patch release, was released in June. In October, Moodle HQ will release Moodle 5.1.0, the second minor release in Series 5. The fourth release in a series, in this case Moodle 5.3.0, will be a LTS release, and will be followed by Moodle 6.0.0, the first Series 6 release.

Plugin removals

The following plugins are no longer included in Moodle, beginning with Moodle 5.0:

As of writing, these plugins are published on various GitHub repositories but not available through the Moodle plugins database. They have not been explicitly tested on Moodle 5.0. If you intend to keep using one of them in Moodle 5.0, it’s important to ensure that you’ve downloaded the code before executing the upgrade, otherwise data from the plugins may be removed as part of the upgrade process.

Activities overview

The Activities overview has been redesigned for Moodle 5.0. This appears to be a partial reimplementation: supported modules include Assignment, Workshop, Feedback, Resources, but not Quiz, which still has the pre-5.0 page. The page is available to teachers and students. The information given for Assignments includes Assignment name, location of assignment within the course (section name), due date, number of submissions received, and quick actions/grading. There is no sort functionality although it’s been proposed. Entries are sorted in the order that they’re on the course page except all subsections fall after all sections. Moodle HQ has additional development planned for future releases.

Table listing an assignment with its due date, number of submissions, and a grading action.
Activities overview showing a teacher’s view of an assignment

TinyMCE drag-and-drop

Media can now be dragged-and-dropped into the TinyMCE editor. Depending on the size of the original image, you may need to resize the dimensions so that the image fits the size you’re looking to obtain. You can resize the image by clicking on the picture icon in the TinyMCE toolbar. The measurement is in pixels. You are not prompted to add alternative text but you can go back and add it later. It appears in some cases to pull alternative text from the image metadata but this behavior wasn’t consistent.

AI subsystem

The AI subsystem was introduced in Moodle 4.5, and we reviewed it at the Winter 2025 Hack/Doc Fest at Lafayette. A new feature is an “explain” button in addition to “summarize” on pages. The prompts that are sent along with text are different between explain and summary. Those are configured inside the Action Settings of a provider instance.

Both summarize and explain contain the instructions by default:

“Important Instructions:

    1. Return the summary in plain text only.
    2. Do not include any markdown formatting, greetings, or platitudes.
    3. Focus on clarity, conciseness, and accessibility.”

Explain has instructions along the lines of Elaborate, Simplify, Provide Context and Organize logically. Summarize is more concise; it includes “Condense and Simplify”.

You can also configure multiple providers, setting up the future possibility of using different providers for different tasks. Configurable options include rate limits and the model to use (gpt-4o is the current default). You can also use an OpenAI compatible API such as a locally-hosted Ollama instance.

SMS notifications

Moodle now supports SMS notifications as part of the Messaging system. This is a pluggable interface; core ships support for AWS SNS and Modica, while Twilio is available as a plugin. CLAMP doesn’t possess a suitable phone number so we only evaluated the configuration side. In General > Messaging > Notification settings, you can enable SMS. You can then scroll down to unlock SMS for assignment notifications only; that’s all that’s supported in this release. If you leave them off by default, users can choose to enable them.

We did find an interesting bug. If you have enabled SMS in Messaging but disabled all available gateways, various parts of the Moodle Messaging system don’t work properly.

Other issues

TinyMCE keyboard conflicts

When using TinyMCE as the editor and also typing in Hebrew on a Mac, a specific keystroke triggers the TinyMCE Help menu and does NOT type the intended character. The specific keystroke is alt-0 and in Hebrew it should appear as a small diacritic below the typed character. An aleph character without the diacritic looks like this: ש but with the diacritic, it looks like this: שְ. This is actually a bug in the upstream TinyMCE project and not specific to Moodle, but we’ve reported it in both places.

Forum attachment accessibility

Moodle allows you to upload images to the forum activity as attachments, instead of inserting them inline in the TinyMCE editor. When images are added in this way, they are displayed at the bottom of the post. However, there is no option for adding alternative text to images added in this way. We’ve reported this to the tracker, and we recommend for now that users not upload images (as opposed to other types of documents) to the forum as attachments.

Upload interface for forum attachments; there is no option to describe the image
Uploading a file as an attachment to a forum post

Disable Safe Exam Browser

There was interest in hiding the safe exam browser functionality from teachers. This can be accomplished by modifying the teacher role and setting the following capabilities to Prevent:

  • quizaccess/seb:bypassseb: Bypass the requirement to view quiz in Safe Exam Browser
  • quizaccess/seb:manage_seb:allowedbrowserexamkeys: Change SEB quiz setting: Allowed browser exam keys
  • quizaccess/seb:manage_seb:allowreloadinexam: Change SEB quiz setting: Allow reload
  • quizaccess/seb:manage_seb:requiresafeexambrowser: Change SEB quiz setting: Require Safe Exam Browser

Overrides don’t appear properly at times

At times users don’t see the correct overridden dates on the timeline and/or calendar (in various places). This appears to be the case primarily if a user is a student in one course and a teacher in another. See links below for related tracker issues.

All tracker items

Please see below for a list of all tracker items that we collected during the Hack/Doc Fest. Please be aware that Moodle migrated to JIRA cloud hosting the weekend after the conference and some users have reported challenges logging in since then.

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.

Boost

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.