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
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
Comment #3
ob3ron commentedA 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:
Comment #4
ob3ron commentedStill failing testing, done for today.
Comment #5
ob3ron commentedRemoved revisions radio buttons and DataIntegrityChecker updates, will submit in separate MRs. Now just text changes / additions only.
Comment #6
sirclickalotI 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.
Comment #9
ob3ron commentedHi @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
Comment #10
graber commentedJust noticed I posted a review but didn't change the status..
Comment #11
ob3ron commentedIncorporated feedback as much as possible.
Comment #12
graber commentedCan we have that on 1.2.x? Needs rebase too.
Comment #13
markfelton commentedHi 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.
Comment #14
graber commentedI'll extract updates of translatables to a separate branch..
Comment #17
graber commentedExtracted, 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.