The first question most people ask is, “Isn’t there an export option to make PDFs created in LaTeX accessible?” It may be theoretically possible, but no one has developed or maintained a package that does it successfully. The main issue is that LaTeX-to-PDF exports have equations and graphs, etc, exported as images without alt-text. In other words, these PDFs are inaccessible.
Our research here at Swarthmore has led us to find outdated packages for LaTeX that do not successfully export to an accessible PDF. Many were developed by folks at universities in search of a solution.
What we recommend, instead, is to prepare LaTeX for export to HTML.
In order to achieve 99% accessibility with any output, the easiest answer is to edit the source document. In this case, we will need to edit our LaTeX code so that the .html meets accessibility best practices.
Insert title in preamble metadata: \title{_} ;
Insert sections in document body: \section{_}, etc ;
Use \enumerate{_} \item \item … \end{enumerate} for numbered lists;
Use \itemize{_} \item \item … \end{itemize} for bulleted or unordered lists;
Copy and paste the following command at the prompt: pandoc --shift-heading-level-by=1 --mathjax -f latex -t html -s -o <file>.html <file>.tex.
What does this have to do with Moodle?
When we discuss best practices in accessibility, we talk about
allowing an end user to choose their preference.
maintaining accessibility in the source document.
In the case of LaTeX, we have had students prefer to read the .tex file exactly as .tex because that is easier for them than the inaccessible PDF. Might we find ways to have Moodle export a .tex file to .html or .pdf or something else in some quick and easy way?
For now, we instruct faculty on how to post .html files on their Moodle sites.
Posting HTML files to Moodle
These are the current steps to post a remediated HTML to Moodle, as given to instructors at Swarthmore, where we post remediated files to Google Drive:
When downloading a folder from Google drive, it becomes a .zip file. You may choose to download each folder for your remediations and then directly upload them to your Moodle course page. Here’s how to do that.
Open the Moodle course in which you’d like to place the .html.
Enable Edit mode.
Add an activity or resource.
Choose File.
Fill out the required field: Name.
Choose the .zip file that contains the whole folder with everything in it.
Once it’s showing in the “Select files” area, select the folder.
In the dialog box that pops up, choose Unzip.
You will likely see:
an images folder, if there are images
the .html or .xhtml file.
the original .zip file.
Delete the .zip file.
Select the .html or .xhtml file.
Choose Set main file.
Choose Save and return to course.
Some professors choose to put the .html, .tex, and keep the .pdf so students can choose from the .html, .tex, and the .pdf files. Others replace .pdfs with the .html altogether. HTML files, when done correctly, are generally more accessible than .pdfs.
For more information on posting displaying a website index page or .html to your Moodle site, refer to Moodle’s File Resource Settings page.
How you can help
Can you think of ways to streamline this process?
Can you think of ways to have Moodle export any file, including .tex or .docx or .pptx to .html or .pdf or something else in some quick and easy way? It could be by the end user (student, presumably) or the faculty.
Are you aware of other ways to handle STEM in an accessible manner?
Learn and implement accessibility practices every day!
We discussed a few of these at Hack/Doc in June and feel the project is just beginning.
CLAMP held its Summer 2024 Hack/Doc Fest at Bryn Mawr College in Bryn Mawr, Pennsylvania. The primary focus of the event was evaluating Moodle 4.4. We’re happy to report that we encountered no major issues and no blockers to upgrading to Moodle 4.4 over the summer. Please read on below for for details of the various issues we discussed.
Issues
Activity cards
Activity icons in Moodle 4.2Activity icons in Moodle 4.4
We tracked the improvement in activity cards and icons from Moodle 4.2 to Moodle 4.3 at the Connecticut College Hack/Doc Fest last January and we’re pleased to report that Moodle has made additional improvements. Whitespace is tighter and the icons themselves are smaller and more distinctive.
Default text editor
Moodle HQ has confirmed that Moodle 4.5 will be the last version of Moodle to include the Atto text editor. Support for TinyMCE has improved significantly over the last few releases. The Moodle plugins repository has over a dozen plugins available for TinyMCE now, and we didn’t encounter any problems working with it at Bryn Mawr.
Brickfield accessibility tool
We took another look at the free version of the Brickfield accessibility tool that is included with Moodle. The paid version offers feature parity with Anthology Ally. The free version scans the HTML of the course page. For experienced users, it can usefully call out issues such as outdated HTML tags (for example, <i> instead of <em>), missing alternative text, or missing descriptive link text. If you don’t know what you’re doing with accessibility, it can be overwhelming. For instance, Swarthmore tested in a continually-imported/exported course and found around 1,800 “errors,” which were mostly <i> or <b> or where that is the required notation for that discipline but it returned it as an error.
Accessibility Filescan
Swarthmore’s internally-developed accessibility filescan tool is now available on the Moodle plugins repository. This new version no longer requires a standalone processing server. The plugin scans PDFs in a course checking for language, text as text (as opposed to images of text), title, and tags. Used by itself, the Accessibility Filescan gives a snapshot of the PDF documents in your Moodle course and where you stand in terms of their accessibility to anyone who prefers to co-read, read with their ears, navigate without a mouse, etc. Used in tandem with Brickfield, it could provide useful overall knowledge-building when it comes to digital accessibility.
Use Screen Reader to test grading activities
Jen Moore at Swarthmore used NVDA to evaluate the accessibility of grading activities. The testing went well and concerns about emojis turned out to be unfounded. See the following links for videos of the testing:
A screen reader user navigating a post with emojis as stand-ins for bullets: Emoji Bullet Points.
Database activity as syllabus host
Sample definition of database fields to describe courses
Lafayette is exploring using a Moodle platform to create a centralized repository of course syllabi to assist with course shopping during registration windows. Requirements for this project include that it be searchable, that authentication is required, no restrictions on file types, and that the student information system remain the system of record. Lafayette explored using the database activity to deliver this capability. We created a database activity with fields for course code, name, description, prerequisites, and syllabus document, and then pre-populated all but the latter from our SIS.
We identified the following challenges with using the database activity:
We’d like a permissions model where students have read-only access, and faculty can upload files but not alter the rest of the metadata. The default fields do not support that level of granularity.
The file field type only supports one uploaded file. For courses with multiple sections taught by multiple instructors it’s likely that we would want to allow multiple files.
The database activity is pluggable via the datafield type; Lafayette experimented with creating versions of the text and url fields that support “locking” via a separate permission. That approach could also allow creating a “files” field that supports multiple uploads.
As an alternative, Jeff Hopkins at Bryn Mawr demonstrated using Airtable to create a database submission form searchable through Moodle.
Asynchronous backups
We looked at asynchronous backups when Moodle 3.7 was released (Summer 2019 Hack/Doc). We revisited because it’s now the default behavior for new installations in Moodle 4.4. Bucknell University already uses this setting in its production environment. When you launch the backup or restore (after choosing all the relevant settings), the task is handed off to ad-hoc task processing, and you can continue with editing your Moodle course. You are no longer locked out of Moodle until the process finishes, as you were in earlier versions of Moodle.
If you stay on the page, you will see a progress bar as the task is being completed behind the scenes. For the backup process (if you stay on the page), you can download the backup from the results page, and you can also restore it to a new course. If you navigate away from the page (for a backup procedure), you can click on the “Restore” link in the original course to find the backup file that you created. For the “Restore” process, if you stay on the page, you will be taken directly to the restored course. If you navigate away from the page, you can just look for the new course in the list of courses, or you can wait for the confirmation email that you will receive when the task is complete. The confirmation email message will have a direct link to the new course.
One issue Bucknell have discovered is that if there ever is a backlog of tasks to be processed, the backup/restore tasks get hung up as well. In other words, if several of your ad-hoc tasks are taking a long time to process, and if you haven’t increased the number of concurrent tasks that are allowed to run on your Moodle server, it’s possible that the backup/restore process can be delayed until those other processes finish.
Backup and Restore best practices
There was a general discussion about “best practices” around backup and restore. Schools were surveyed for their policies to course retention, and several examples are given below:
Kalamazoo: Three years hidden, available to faculty only
Haverford: Courses available for past three academic years–although may be hidden by faculty. Available upon request for eight years. Older courses deleted. Private archives recommended.
The problem of restoring courses larger than the web server’s upload limit was discussed. Several schools manually transfer the backups to their Moodle server, then use Moodle’s command line tools to restore the backup file.
Moodle gradebook video tutorial scripts
There is a growing need to help instructors become better acquainted with Moodle Gradebook. A recent CLAC email thread shows this lack of love for Moodle Gradebook is growing among our peer schools. We’ve developed a set of video tutorial scripts for basic Moodle Gradebook functionality. There are nine altogether, ranging from “Assigning Weights to Categories” to “Creating Ungraded Items in the Gradebook.” Each would be no longer than five minutes. See Gradebook Video Tutorial Scripts for all the scripts.
Explore Outcomes for alternate grading
We looked at ways to facilitate alternate grading methods in Moodle such as Specs Grading and Un-grading, etc. We tried to use the Outcomes feature of Moodle to accommodate this need. If it is not feasible, perhaps we can design a better way to make this work.
Outcomes differ from Competencies in that Outcomes can be created by teachers at the course level. You can assign a custom scale to an Outcome and then associate that outcome with any number of assignments. You can then use that scale to assess students for any of the assignments associated with that Outcome. Those Outcomes still show up as grade items in the gradebook, but you cannot weight those outcomes. That’s not going to work out well for Specs Charts. We didn’t get a chance to test whether you can get around that limitation by putting the outcome in a category and then weighting the category.
Button for LaTex conversion
Swarthmore is encouraging faculty to post .tex files—as opposed to PDFs of .tex files—to Moodle for a most-accessible outcome for students, as they can choose their output preference. In other words, if they download the .tex, they can open it in their preferred .tex reader and then render, or convert, it to whatever output they prefer—PDF, HTML, something else? The challenge is that process for converting a .tex file into an HTML file using PANDOC is fiddly, involving multiple steps on the command line. CLAMP has published documentation for this (Converting LaTeX to HTML using PANDOC) derived from Swarthmore’s testing.
Brickfield supports .tex files, but we did not have access to the paid version in order to test remediation. We did have access to Anthology Ally but it has no options for converting a .tex file. There are no plugins on the Moodle Plugins repository offering LaTeX conversion. SensusAccess can convert a .tex file to an .html file, though the output lacked headings. It might be possible to build a local plugin that wrapped PANDOC and converted .tex files on the Moodle server itself, but there were challenges with that approach. The consensus at Hack/Doc was that working with faculty to remediate their files locally would be more fruitful.
Send course welcome message for self/manual enrollments
There is a new feature that allows you to customize a welcome email when users are added with self-enrollment or manual enrollment method. The default is that this is on and the welcome message comes from the teacher in the course. This default can be changed in the admin settings so that no message is sent at all.
Default grade export method
It’s now possible to configure the default grade export method. This is done in Site administration > Grades > General settings. The default is OpenDocument spreadsheet; other options are Plain text file (CSV), Excel spreadsheet, or XML file. Microsoft schools should probably choose Excel.
Let a quiz have multiple total grades (e.g. for each section)
This works! You can divide questions between sections and create separate grades for each section. You also can move questions between sections, even after students have started taking the quiz.
Add option to user tours to make them always show
There is a new feature in Moodle 4.4 that allows you to set a user tour so that it will always appear. This feature does work as advertised, but we were at a loss to come up with a use case for our institutions.
Add bulk actions to the”Browse list of users” page
The browse list of users page was rebuilt as a system report in Moodle 4.4 and bulk actions are now available there, instead of building the filter and then switching to the bulk users actions page in prior versions.
Switching Edit mode returns one to the top
We flagged a pair of navigational issues, one fixed and one not. We’d noted that in Moodle 4.2 using the back button to return from an activity to the main course page you were returned to the top of the course page, even if you’d been in the middle of the page. That issue was fixed in Moodle 4.3. A similar but related issue is that toggling edit mode returns you to the top of the page, instead of scrolling to your original position. Moodle HQ will not fix the issue.
Bulk processing of Drops via ILP on Moodle
Ellucian is investigating large numbers of student drops not making it to Moodle. Additional concerns were raised about what happens to manually enrolled people who are supposed to be in the course (TAs, Writing Assistants, etc)
Macalester ITS tested this functionality and found that in the default settings of a bulk load, as compared to the live change processing of ILP), drops are not processed. That being said, in the interface there is an option to process drops. Selecting the toggle in the ILP bulk load creation tool for “Process inactive or dropped enrollments” causes ILP to send deletes for users who were at one point registered and no longer are.
Macalester tested this functionality on their test site:
Manually enrolled six users on our Moodle test site.
Disabled live transactions between our test Banner instance and test Moodle instance.
Via Banner we processed a drop for a user.
Executed a test bulk load without the “Process inactive or dropped enrollments” enabled. The user and all six of our manually-enrolled folks stayed in the course.
We then manually deleted the user from Moodle.
Executed a second test bulk load with “Process inactive or dropped enrollments” enabled. We saw in the ILP logs that it send a DELETE command for the users and there were no errors on Moodle or ILP reports due to the user already having been removed. We then processed a new user drop in Banner, processed another bulk load with the ILP toggle active and saw that user removed from the Moodle page.
Conclusion: ILP bulk loads with the “Process inactive or dropped enrollments” toggle active will process drops that weren’t processed by the real time messaging of ILP and leave in place manually enrolled TAs, etc. Depending on the scale of the failing drops Macalester may schedule bulk loads for overnight processing to ensure drops are processed correctly in Fall 2024.
The admissions building at Bryn Mawr started as a private residence designed by Frank Furness
Registration is now open for the Summer 2024 Hack/Doc Fest, which will be held at Bryn Mawr College from June 25 through June 27, 2024. CLAMP’s Hack/Doc Fests are twice-yearly unconference-style events dedicated to improving the Moodle experience for liberal arts colleges.
For CLAMP schools, CLAMP will reimburse your first night’s stay at the Courtyard by Marriott Philadelphia Devon/Villanova. There is no group rate for lodging.
CLAMP held its Winter 2024 Hack/Doc Fest at Connecticut College in New London, Connecticut. The primary focus of the event was evaluating Moodle 4.3. We’re happy to report that we encountered no major issues and no blockers to upgrading to Moodle 4.3 over the summer. Please read on below for for details of the various issues we discussed.
Issues
Activity cards
Activity icons in Moodle 4.2Activity icons in Moodle 4.3
Moodle redesigned the activity cards for Moodle 4.3, making a number of incremental changes:
The icons (shown above) are smaller, taking up less screen real estate.
When in edit mode, a teacher may view and modify access restrictions from the course page
When in edit mode, a teacher may view and modify group settings
Group icons for teachers
Group mode drop-down in Moodle 4.3
As mentioned above, an activity with group mode enabled will now display an icon, and this icon has an associated drop-down menu for modifying that group mode. There are a few caveats that you should be aware of:
There is no warning if an instructor designates a group setting in the assignment activity even when there are no groups in the course.
When working with assignments, this drop-down refers to the setting in the “Common module settings” and is not affected by the “Submit in groups” setting.
Communications providers
Moodle 4.3 adds the ability to integrate with an external communications platform. At the moment the only well-supported platform is Matrix, an open-source communications platform. We set up a Matrix server in the CLAMP environment and verified that it worked as expected–you could add a Matrix integration to a course, and Moodle set up a room on the Matrix server and provisioned user access. At the moment, there are no other providers listed on the Moodle roadmap. We could see this being useful for Microsoft Teams or Google Chat.
Gradebook improvements
The gradebook is too heavy
There are several incremental improvements to the Gradebook:
Adding a grade item/category is now in a drop-down menu on the right side instead of buttons. Selecting one generates a pop-up window with a form field (instead of going to a new screen). However, clicking “show more” within the pop-up window in order to see additional options causes the pop-up to change to a new screen (the same way it behaved previously).
Moving grade items in Gradebook Setup is modified – checkboxes on the left. It’s easier to see which ones you’re checking. When items are checked, a new option appears at the bottom instead of the “Move Items to” drop-down menu.
Clicking the “Move” icon at the bottom opens a pop-up window allowing you to select the category to Move the items to. Despite the fact that the “Move” icon is the cross-arrow Move tool that normally allows you to drag-and-drop items, this is literally just a clickable icon, no dragging-and-dropping.
On the user report, icons show overrides, hidden, and locked items using icons instead of words.
When using Natural Weighting, the gradebook setup shows if the sum of the weights isn’t 100%.
Rescaling forum grades
We’ve confirmed that rescaling forum grades is handled differently from rescaling assignment grades, and that this issue is tracked in MDL-56949.
TinyMCE 6 Plugin Integration
There are paid TinyMCE plugins that can be activated without installing additional code–you just need a valid paid TinyMCE plan and API key through https://www.tiny.cloud/. Most plugins worked as expected; we ran into problems with Link Checker and Page Embed. See https://www.tiny.cloud/pricing/ for information about pricing.
Question bank filtering
Filtering in the question bank
Two conditions are defaults. The first is a category field. The set options are “Course,” “Category,” and “System.” For course, you only have the option of the course whose page you’re on. So, you couldn’t do something like hop between multiple course sections’ versions of a quiz from this menu. You can do this if you put all questions into the same category, however. Still, you will only be able to see the one category you’re already in (e.g., all physics courses for the Spring 2024 term). You can use the “With Selected” menu (in the bottom left-hand part of the above screenshot) to move questions from category to course.
The second default condition deals with whether hidden questions are shown. It can only be set to “Yes” or “No.” Finally, you can add an extra condition onto these first two. At the moment, however, the only supported extra condition deals with tags.
Taken together then, this feature is not particularly helpful. It’s too limited in the questions banks it can search and the search terms it can use to be truly helpful. It can be ignored easily enough, but many who interact with it will be disappointed and/or frustrated.
Removal of time delay in forum activity
In Moodle 4.3, the Q&A forum can be configured to allow students to post immediately without any time delay. This works as expected.
Limiting LTI tools to by category
Moodle 4.3 allows administrators to restrict preconfigured LTI tools by category. This could be useful in cases where there are discipline-specific tools (e.g. for Chemistry) that wouldn’t be useful outside that discipline. We verified that this works as expected, and that you may restrict a tool to more than one category.
Deleting rubrics
We investigated how Moodle manages rubrics and learned a few things:
If you delete a rubric from an assignment it’s actually deleted
Every time you import a rubric it creates a new rubric, which is then itself available as a template, even if the two rubrics are the same
Moodle cleaned up the language to make activity completion conditions clearer for students and instructors. The functionality is entirely the same. Examples:
The settings menu is now called “Completion conditions”
Radio buttons instead of drop-down menu
Fewer words describing the conditions
Added a “set a reminder” feature for the timeline (changed from “Expect Completed By”)
Completion requirements show up in drop-down menu in activity card (takes up less space)
Book navigation improvements
The book activity now has floating navigation. Moodle’s new features page says this is better, and the group agrees.
This isn’t new in Moodle 4.3, but it was improved. Moodle offers the ability to subscribe to various events and receive emails when things happen. As with any monitoring feature there are tradeoffs; you run the risk of being overwhelmed with messages that you won’t act on. See Event monitoring for more details and examples.
Swarthmore’s accessibility plugin
We’ve looked at Swarthmore’s PDF accessibility plugin at past Hack/Doc Fests. Tony Weed at Swarthmore rewrote the Moodle Accessibility Filescan plugin to work without external dependencies. The plugin evaluates the accessibility of PDF files uploaded to Moodle courses. An optional Moodle block provides the ability to inform Teacher roles of the accessibility of PDFs in the course. In the past, this plugin required a separate server to process the files, but everything is contained within the plugin.
We evaluated a plugin that allows teachers to enter some text and have OpenAI (ChatGPT) create some questions based on the text. It worked reasonably well, but is probably better aimed at K-12 or simple quizzes designed to check if a student completed a reading.
For example, we pasted in the US Constitution and asked the block to come up with 5 short answer questions:
Who has the power to impeach the President?
The House of Representatives
Who has the power to try all impeachments? The Senate
What is the minimum age to be a Representative? 25
What is the minimum age to be a Senator? 30
Who is the President of the Senate? The Vice President of the United States
The author of the plugin works for Moodle US.
Retain course page position
Previous versions of Moodle would encounter an accessibility error when using browser’ back buttons to return to a previous page. They would return to the previous page, but they would not return to their previous position on a course. So, if a user clicked on an activity that was the fiftieth item on a course page and then hit a browser’s return button to go back to the course page, they wouldn’t go back to the fiftieth button. It would instead go back to the first item. The fix solves this problem so, in the scenario above, the person would correctly go to the fiftieth item.
Another component of this fix occurs on the block menu. Previously, a block menu that required scrolling because so many blocks were enabled could produce an error. The error would result in someone who’s trying to scroll on the block menu instead scrolling on the main page, breaking the layout. This behavior is not happening in our test instance.
The Forum function has now been tested and works as expected. The same applies to the sticky footer feature that is intended to be used in mobile settings. Finally, the gradebook has an appropriately sticky header. As a result, the column titles will stay in place even as you scroll all the way down a list.
The last function that’s part of the fix works on the block drawer. If you’re tabbing through the block drawer such that the scroll function will be used, dialogue will pop up asking you to skip a block before entering it. If you tab to that dialogue and hit enter, you will skip the box.
Local course LTI tools
The “LTI External Tools” option within courses allows for the toggle of LTI tools to be displayed in the Activity chooser window. In order to make it available, the “Tool configuration usage” settings needs to be set to at least “Show as pre-configured tool…” when setting up the integration.
An applicable use for this feature would be when a tool is added for a teacher and will be in limited use, the teacher can be made aware and add this to their Activity Chooser without forcing it to display for all course instructors who are not utilizing the tool or service.
The settings work and display as intended. Local tools can also be added by the instructor and managed from the “Tool configuration usage” menu.
File upload progress z-index problem
The Moodle block drawer clips the upload progress
In Moodle 4.3, when dragging files into the course, the progress status modal is hidden by the block drawer. The progress modal displays as expected in Moodle 4.2, so this appears to be a new problem in this release.
And in conclusion…
As always, thank you to all our participants, both online and in-person, for all their hard work that went into this event. Please watch this space for details about our summer event, location to be determined.
Registration is now open for the Winter 2024 Hack/Doc Fest, which will be held at Connecticut College from January 9 through January 11, 2024. CLAMP’s Hack/Doc Fests are twice-yearly unconference-style events dedicated to improving the Moodle experience for liberal arts colleges.