Problem/Motivation

User-facing messaging and descriptions can have a major impact on user perception. The current user messaging is functional and effective, but we can elevate the user experience with some simple text changes that will improve the module's usability and user-friendliness.

There are also a number of places where adding a short description or help text would add a lot of clarity and ease-of-use. For example, it's important for teachers to understand the implications of the revision settings when editing an activity, lesson, or course. As another example, adding some help text at the top of the Activity Types page would make it a lot more clear what to do with them.

Proposed resolution

Review all of the module's messages, labels, descriptions, etc and evaluate them for clarity, ease of use, and user-friendliness, and improve them where needed.

Also identify places where a description or help text would be useful, and inject it, possibly in a collapsed accordion. If appropriate, also link to the documentation page for more info.

Issue fork lms-3591203

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

ob3ron created an issue. See original summary.

ob3ron’s picture

Status: Active » Needs review

A wide-ranging update of user-facing text, with the intention of improving clarity, ease-of-use, and user-friendliness throughout the module. Some functional updates were also made where they made sense to do first (previously discussed in #3525100: [meta] UI/UX Improvements), in order to add descriptive help text in the best form factor.

Updates include:

  • Clarified titles and labels to be more descriptive, for example renaming the Question field on Activities to "Learning content and question", and renaming buttons like "Reference activities" to "Add existing activities".
  • Simplified the page title on course activities: removed the lesson name since it's now obvious from the navigation block #3515744: Convert course navigation block to SDC
  • Updated the TrainingException warning messages to be more clear, user-friendly, and actionable.
  • Injected contextual "Help & Documentation" accordions to the top of all administrative views and listbuilders (Courses, Lessons, Activities, Activity types). Created a new Classes view in order to include it in having help text.
  • Updated entity creation modal titles to include the entity type being added.
  • Updated revisioning warnings, specific to whether "Use revisions" is turned on or off. Some updates were made to the DataIntegrityChecker logic for this purpose, and also to exclude teachers from counting as active students.
  • Added warnings (when specifically needed) and instructions to the choice of saving with or without a new revision when editing LMS entities. Injected a change of the revision checkbox to radio buttons for this purpose, to enforce a conscious choice of how active students will be affected.
  • Updated VBO confirmation messages ("Are you sure you wish to perform action on 1 entity?") to be more descriptive of the actual action being taken.
ob3ron’s picture

Status: Needs review » Needs work

Still failing testing, done for today.

ob3ron’s picture

Status: Needs work » Needs review

Removed revisions radio buttons and DataIntegrityChecker updates, will submit in separate MRs. Now just text changes / additions only.

sirclickalot’s picture

I wholeheartedly agree with all of this — nice work! Non-Drupal, non-developer, non-site-builder-friendly wording is absolutely crucial if we have any hope of winning over teachers with the exceptional flexibility and power of Drupal, especially when they are faced with easy-to-use but rigidly limited offerings such as Moodle, Canvas, and Totara. None of these are truly free, and none offer anything close to the flexibility that Drupal affords. But then, you already knew that — you are a Drupal fan yourself.

Building on the ideas above, and drawing on my many years of working with establishments making the move to Drupal, I genuinely believe the only way to do this properly is to have something built directly into the LMS UI that puts ALL messages and ALL action buttons under the control of the site builder. Think of it as a modern, more targeted equivalent of the old "String overrides" module — a blunt instrument in its day, but effective — reimagined and tailored specifically for the LMS suite.

Moreover, if such a tool were built — which would, in all likelihood, be engineered as a collection of database records — there is no reason why those text overrides could not also be user- (or author-) specific. It would simply require an additional key in the table.

Is anyone interested in discussing this idea further, either here or offline with findings reported back to the group?

I have plenty of experience delivering training, and more importantly, I have a considerable amount of time available to dedicate to working with community members on developing such an idea.

ob3ron changed the visibility of the branch 3591203-uiux-user-facing-copywriting to hidden.

ob3ron’s picture

Hi @sirclickalot, thank you for your valuable input. One of the architectural choices and major strengths of Drupal LMS is its compatibility with any other Drupal module, so if a site builder wants to use the String Overrides module, they can, it still has a current release. All of the messages, buttons, etc in LMS are passed through t(), so they can be fully customized by string overrides, core translation, or settings overrides. There's no need for LMS to provide that functionality, since it is already available in several different ways in the Drupal ecosystem. Unless there is something more about your suggestion that I'm not understanding?

The intention for this issue is to improve the default strings to make the module more user-friendly out of the box. If you have any suggestions for better defaults, those would be gratefully received.

What would be even more valuable, given your experience delivering training on other platforms, is to get your feedback on Drupal LMS's overall UI/UX and what could be done to make it more easy to use overall. There's a parent issue with more high-level discussion here: #3525100: [meta] UI/UX Improvements

graber’s picture

Status: Needs review » Needs work

Just noticed I posted a review but didn't change the status..

ob3ron’s picture

Status: Needs work » Needs review

Incorporated feedback as much as possible.

graber’s picture

Version: 1.1.x-dev » 1.2.x-dev
Status: Needs review » Needs work

Can we have that on 1.2.x? Needs rebase too.

markfelton’s picture

Hi Ob3ron,

I created a table of before/after text strings from the MR:
https://docs.google.com/spreadsheets/d/1Q-KOna9omGKM23He1fNgI8Xar1MnWXOO...

I used gemini to summarize drupal best practices (basically interface text and help text).

The main thing I found was there was a lot of "Please" and "Sorry" - which I think should be removed.

Thanks to the magic of claude code, in my local, I have a strings-only rewording of this MR's user-facing text ready to share / push (reverting the question field labels to the short originals per my CSV), with matching test updates.

The only non-string lines are one added @label placeholder and two added #description keys; phpcs is clean and the contested views/VBO/update-hook strings are untouched.) The field description changes live in config/install YAML, so they apply to new installs only and existing sites keep their current descriptions, consistent with the config concerns raised in review.

pls me know if it's helpful if I do push the update that should pass on 1.2.x.

graber’s picture

Assigned: ob3ron » graber

I'll extract updates of translatables to a separate branch..

graber’s picture

Assigned: graber » Unassigned
Status: Needs work » Fixed

Extracted, applied Mark's recommendations and merged. Nothing should break BC. Setting this one to fixed.please feel free to open follow-ups for the contained lms_help functionality. Separate to smaller issues whenever possible, otherwise nothing will ever land.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.