UX improvements in Drupal 6: terminology, grammar, information presentation, walls of text

This is the second blog post in a series examining Drupal 6 core contributor user experience improvements. Improving the user experience in Drupal is one of the biggest challenges the Drupal community faces, mostly due to a competitive pressure best described as The Ockham's Razor Principle of Content Management Systems. From a contribution standpoint, the most user experience improvements come in the form of information based improvements. I further categorize information improvements as terminology, consistency, grammar, information presentation, and walls of text. Some of them are improvements in information presented during installation or updating. Others are in information that is statically presented in administration interfaces, or dynamically presented information.

For Drupal 6 there were also at least 62 unique contributors to 107 information improvement patches. These contributors are Keith Smith, Gerhard Killesreiter, Rob Roy Barreca, Angela Byron, Antony Simmonds, Simon Hobbs, Yuval Hager, Addison Berry, Károly Négyesi, Peter Wolanin, "Webernet", Derek Wright, Chad Phillips, "Kaerast", Konstantin Käfer, Chris Kennedy, Earl Miles, "Arancaytar", Gurpartap Singh, Thilo Wawrzik, Michael Samuelson, Joon Park, Andy Kirkham, "Peterx", Frederik 'Freso' S. Olesen, "Rowanw", Barry Jaspan, Benjamin Wheeler, Sam Tressler, "fajerstarter", Derek Wright, Stéphane Corlosquet, David Norman, Nick Berendsen, Daniel F. Kudwien, Neil Drumm, Johan Forngren, Daniel F. Kudwien, Jiří Bernášek, J. Swami, Nathaniel Catchpole, Larry Garfield, Nathan Haug, Simon Potter, Blake Hall, Kobus Myburgh, "DanW", Gaele Strootman, James Gilliland, Erik Stielstra, Jordan Cronin, Yves Chedemois, Marco Huenseler, John VanDyk, Stephen Webb, Stefaan Lippens, Jake Gordon, Khalid Baheyeldin, Morbus Iff, Kent Bye, Matt Westgate, and Johannes Egger.

At Drupalcon Boston, I asked Bob Goodman to present on User Experience improvements which he did in a session entitled "Burning The Help Manual: A Strategy For Self-Explaining UI Design." I am now working with Bob to get an updated and improved version of his slides. We will also be posting a video of his session which addresses the principles of self-explaining UI design.

If you know a designer or user experience practitioner who is interested in helping improve the Drupal core, ask them to join the Drupal usability group. Show these practitioners the list of improvements below and encourage them to engage in these types of improvements. There are lot of friendly contributors who would be eager to have their input.

    Below is a list 109 information improvements in Drupal 6.
  1. - Patch #113377 by Gerhard: clean up .htaccess.
  2. - Patch #98359 by Robroy and webchick: string clean-up: web site -> website
  3. - Backporting comment module validation fixes. Already went into DRUPAL-5.
  4. - Patch #125092: getting rid of some string clutter, changing Drupal forever ... :P
  5. - Patch #139979 by asimmonds: Display consistent message for unavailable statistics.
  6. - Patch #142798 by sime: documentation fix.
  7. #145737 by yhager, documentation cleaned up by myself: add support for RTL CSS overrides and default RTL CSS override files for modules
    Note: properties, which are different in the RTL display are marked with /* LTR */ in default CSS files now,
    so maintainers remember that changing them should also have an effect on RTL CSS files.
  8. - Patch #141957 by add1sun: improved consistency of messags.
  9. #145737 by yhager, documentation cleaned up by myself: add support for RTL CSS overrides and default RTL CSS override files for modules
    Note: properties, which are different in the RTL display are marked with /* LTR */ in default CSS files now,
    so maintainers remember that changing them should also have an effect on RTL CSS files.
  10. #148678: Fix notices/warnings on invalid paths like 'node/zzz'. (chx/pwolanin/webernet)
  11. #154046: Optimize confirm_form syntax for common usage (and fix some $form_state bugs).
  12. - Patch #118730 by kaerast, kkaefer and webchick: subltle but important documentation improvement
  13. - Patch #126229 by ChrisKennedy, asimmonds et al: increase node title maxlength to 255 so people can use it to enter publictions with really long titles. ;)
  14. #159443: Update.php text out of date and difficult to follow.
  15. #156315 follow up patch by merlinofchaos: do not display profile chooser task if there is only one profile
  16. #100641 by kkaefer, ChrisKennedy and RobRoy: change 'Submit' buttons to 'Save' to compliy with the desktop metaphor and
    actually tell what the button does ('we know it submits the form, but what it does?')
  17. #100636 by kkaefer, webchick and Arancaytar: more specific page titles for node creation and editing
  18. - Patch #153594 by profix898: usability: remove word 'settings' in blocks administration.
  19. #161963 by Gurpartap Singh: proper links to Drupal.org module and theme download pages
  20. 161496 by meba: display message about successful login, if registration verification is not required
  21. #161351 by webchick and mlsamuelson: fix notice on filter formats config page
  22. #166913 by pwolanin and webernet: fix book outline removal confirm form parameters and improve user documentation
  23. - Patch #166719 by pwoladin: help system fix.
  24. #174254 by pwolanin: Taxonomy term pages need proper titles
  25. #171951 by dvessel: fix account specific theme selection form
  26. #66595 by AjK: add a default title to the search box, which can be altered/styled out if needed

  27. #172447 by add1sun: include a link to the front page of the site on the 'already installed' page
  28. #172433 by chx: use the proper mysqli error function if there is no connection
  29. - Patch #172433 by webchick: better connection error reporting for mysqli.
  30. #174993 by peterx, webchick and Freso@freso.dk: WAI AA comformant title for read more links, ie. we are not repeating the same text but include meaningful information
  31. #175779 by pwolanin: fix filter format addition page and add proper titles for filter configuration tabs
  32. #162276 by Rowanw: usability - reword menu item deletion checkbox label
  33. #180338 by bjaspan: more accurate wording for database update status report
  34. #176503 by chx and bennybobw: hidden profile fields cannot be required and cannot be put on the registration form, so we needed warnings on the editing form to not let admins save forms set with these combinations.
  35. #172588 by Tresler, Freso and webernet: add missing help page for color module
  36. #181088 by fajerstarter, catch and JirkaRybka: rename 'access control' to 'permissions' for usability reasons
  37. - Patch #182950: fieldset massaging for usability.
  38. #165140 by dww: rename logs to reports (usability improvement)
  39. #184954 by scor: fix reference to 'input formats' in the help text
  40. - Patch #184867 by deekayen: documentation improvement.
  41. - Patch #184867 by deekayen: better error messages.
  42. #179519 by chx, webchick and Desbeers: fix blog/[uid] to only display posts for that user and also set proper title
  43. #185867 by hunmonk: (usability) add node title to comment overview page for easier identification
  44. #100570 by keith.smith: break long sentence into two and generally standardize on a common format in taxonomy help text when describing different use cases
  45. #100569 by keith.smith: improve explanation of what a book is about (in book.module)
  46. - Patch #187877 by Keith Smith: fixed slight documentation inconsistency.
  47. #180719 by sun and JirkaRybka: standardize on displaying the term description on term pages and feeds, but only if there was one term, not more
  48. - Patch #168829 by Neil Drumm: fixed link in documentation.
  49. - Patch #191073 by Keith: another good string cleanup by Keith. (Also removed some trailing whitespace.)
  50. #191104 by keith.smith: (usability) change occurances of node to 'post' and 'content' as appropriate
  51. #84754: fix 404 and 403 error pages if the path set for these error pages does not exist
  52. #189870 by O Govinda, keith.smith and catch: more user centric help text for Blog API module, standardizing on 'blog' terminology also
  53. #192209 by catch, webchick et al: use the 'taxonomy' word instead of the more confusing 'categories'
  54. #189986 by keith.smith and bjaspan: reword description on install update notification checkbox to ensure people understand that this is a notification feature, not an automatic update feature
  55. - Patch #192242 by catch, quicksketch, webchick, keith et all: usability improvements for the vocabulary/term forms.
  56. - Patch #190497 by catch et al: taxonomy module help page improvements.
  57. - Patch #190497 by catch et al (follow up): taxonomy module help page improvements.
  58. #193572 by Crell: fix drag and drop documentation and add drag and drop ordering to filter formats
  59. - Patch #100909 by webbernet: improve usability of cron message.
  60. #192406 follow up by JirkaRybka: fix missing textgroup by using the default text group for PO imports when otherwise not instructed
  61. #175876 by hazexp, webernet, keith.smith: unify module/theme/translation download links and include more pointers to these locations
  62. #120960 by blakehall, JirkaRybka, catch: improve usability of content editing permission names
  63. #43447 by Kobus, add1sun and keith.smith: improve blog module help text, also removing ages old reference to import module
  64. #195678 by catch: standardise on Save and Preview button terminology (for comments) and button placement for comments and nodes, so Save is always the leftmost button, and there is no guessing to find it
  65. #195781 by keith.smith: improve aggregator help text
  66. #175127 by keith.smith: better and more translator friendly help text
  67. #196953 by JirkaRybka: add target attribute to 'read more' links generated to RSS feed teasers for RSS reader usability
  68. #197297 by DanW (as GHOP 17), and keith.smith: clean up lots of help texts, update to drag and drop functionality, drupal.module removal, etc
  69. #195083 by Rowanw and keith.smith: menu items are not displayed on the main menu page anymore; update help text
  70. #200069 by keith.smith: new standard for 'more information' links in module help texts, as the handbook we referred to before was renamed
  71. #199402 by keith.smith: standardize on 'Save and continue' text on installer submit buttons
  72. #110474 by dww and keith.smith: passwords are not sent in welcome mails, so do not mislead our users
  73. #188908 by JirkaRybka, documentation added: empty feeds resulted in feeds with all nodes instead
  74. #189880 by keith.smith based on initial suggestions from O Govinda: much better help texts and descriptions for locale module, actually explaining its extended feature set in Drupal 6.
  75. #199890 by gaele, keith.smith: improve block module help text, include description of drag and drop and better help about the throttle functionality; also comes in smaller chunks which makes it easier to translate and update later
  76. - Patch #201437 by keith.smith: further massaging of the help texts.
  77. #99947 by neclimdul, Sutharsan, keith.smith: forum module help text and form description update, removing reference to other forum software as well
  78. #199336 by JirkaRybka: remove improper t() use in update code (update goes all in English, but there were some mistakes), and add messages to updates where there was no return value otherwise, so users know what happens in each update
  79. #178523 by scor, JirkaRybka, keith.smith: user facing errors should contain text for users, not text for developers; still keeping some debug information, if display_errors is turned on on the server

  80. #189881 by keith.smith: document drag and drop in menus and clean up some more help text
  81. #103041 by O Govinda, gaele and keith.smith: reworked node help, removing mention of UI elements we don't have, and linking in other features, we do have; also easier on the translators with text broken up into shorter parts
  82. #199874 by gaele, keith.smith and JirkaRybka: better explanation of site email address, slogan and mission based on usability feedback
  83. #100577 by O Govinda, keith.smith, catch: improve contact module help, more links to where settings are located
  84. #197730 by keith.smith: standardize on a much more user friendly cron reference in help texts, explain its importance with more examples in INSTALL.txt
  85. #202397 by keith.smith: document profile module drag and drop in help text and add info on how categories come to life / can be edited
  86. #189878 by O Govinda, keith.smith: comment module help updates, removing help on features which are not there, and adding help on Drupal 6's new per content type comment settings
  87. #189879 by keith.smith: filter module help text cleanup, better for translators with more concentrated explanations
  88. #197690 by JordanCronin (as GHOP 68): server permissions are now explained very well in a handbook page, link to that
  89. #196630 by yched: postpone warning message display until batch finished, so messages are not forgotten on non-JS batches
  90. - Patch #174226 by keith.smith, pwolanin et al al -- and greatly simplified by me: added a copyright notice.
  91. #204420 by webernet: do not show messages about status problems to those who will not be able to click and go to the reports
  92. #205138 by pwolanin: require node types in forums vocab, fix help text parameter name (outside t())
  93. #206281 by keith.smith: document that people should look into the new system requirements when they upgrade
  94. #202821 by marco.robotangel: display messages above help in all core themes for consistent user feedback (usability)
  95. - Patch #206495 by jvandyk: improved consistency of trigger descriptions.
  96. #200674 by scor, catch: update.php should inform users if their memory limit will possibly result in a WSOD
  97. #79018 by pwolanin, catch, Morbus Iff: document how can one hide CHANGELOG.txt, etc. to improve security a slight bit
  98. #215454 by keith.smith: cleaning up some language in INSTALL.txt
  99. #218539 by keith.smith: more prominent mention of the security awareness / documentation of Drupal
  100. #209240 by gopherspidey, soxofaan: fix settings file checking for multisite setups, and a bad file name used in an error message
  101. - Patch #111086 by webchick: fix contact module error message.
  102. - Patch #169627 by Jirk
  103. #159474 by chx: destination file name should be used in help text, not source file name, which is not available even
  104. aRybka: improved logging of mail problems.

  105. #174224 by kkaefer: send user notification email after the user object is updated
  106. #195161 by mcarbone with some modifications: only show 'login to post comments' if logging in actually lets you post comments
  107. - Patch #63881 by kbahey and jakeg: improved Drupal's logging functionality. Added support for external loggers, and included a small syslog module into core.
  108. - Patch #35177 by Stefan and profix898: added some logging to the taxonomy module.
  109. - Patch #130331 by webchick and webernet: re-number updates according to major version.
  110. #175593 by JirkaRybka: fix help text about textgroups, rewording a misleading example
  111. #152967 by keith.smith, webchick, Morbus Iff and KentByte: update the upgrade instructions for Drupal 6
  112. - Patch #68853 by matt and telcontar: improved documentation for the html input filter.