Just make it a user preference

From MediaWiki.org
Jump to navigation Jump to search


We often request, "Just make it a user preference", and similar. This list-essay aims to summarize some of the complexity with that path.

Every additional user-preference:

  1. Adds to the complexity of the [core/extension] code,
    1. it increases the likelihood of bugs (either now or in the future)
    2. it increases the long-term code-maintenance task
    3. it increases the quantity of variations that ought to be tested, in both automated and manual code checks - each variation adds exponential new combinations
  2. Adds to the complexity of the Special:Preferences tabs (hence making everything a bit more difficult (or less likely) to be found)
  3. Adds to the UI translation backlog
  4. Adds to the already overwhelming documentation
  5. Adds new rows to the user-properties database table, which is already too large (phab:T54777)
  6. Adds to the quantity of things that need to be considered, when contemplating any additional new features in the same feature-set
  7. Makes it harder to diagnose bugs

Hence, developers/designers/managers/etc are very hesitant to just make a new user preference every time [frequently!] that somebody asks for one.


That said, I (and many of us) adore preferences, and I consider Firefox's "about:config" page to be generally DoingItRight™ as far as power-users are concerned (though it needs built in documentation, and I used to use an extension for that before it was abandoned).

I've written a bit more about this, at Talk:Requests for comment/Redesign user preferences#An Ode to Options, A Paean to Preferences, which I'll copy below:

An Ode to Options, A Paean to Preferences, A Serenade to Settings[edit]

Some mumblings about why user-preferences are important.
<Alice> Make the first question: "Do you want to use the default settings or customize?"
<Bob> every nerd worth his or her salt answers "customize"

—Two staff devs on IRC, discussing mediawiki installs

I want to see our Preferences menu become better organized, so that it can grow, with all the tweaks and powertools that some editors need permanently available - The things the various overlapping communities have built over the last 14 years, and continue to create and refine - So that newcomers can find what they're looking for without being overwhelmed, and so that new powerusers can find the brilliant tools they didn't know they wanted.


When I sign up for a new website, I immediately go to the profile menu to see: What things I can turn on, and what I might want to turn off (either now, or in the future). When I install a new program, operating system, or game,[1] I immediately look at the Preferences/Options menu. It tells me a lot about the software:

  • Technical vocabulary (concepts, keywords, and groupings),
  • what configurations the developers thought were useful but not crucial,
  • what options the various demographics of specialized-powerusers might need, that I might want to investigate or use.


One way to make complex systems easy to use is to remove the functionality. But that isn't really solving the problem, is it?

— @MrAlanCooper[1]

This wiki endeavour, requires tools that are as convoluted as photoshop or autocad, for many editors but not all. Newcomers often need something simple, as do casual-editors. We need Photoshop for powerusers, as well as MS Paint for the newcomers and casual editors. - (MS Paint is great! It's Welcoming, and easy to learn via experimenting, and easy to create simple (sometimes even complex) projects in!) - (Photoshop is great! A dense abundance of menus, a profusion of tiny and detailed-metadata, for those who need it! For those who spend many hours every day, for many years, working hard within it.) - We want and need both ends of the spectrum.


  1. https://www.youtube.com/embed/BVbQF0Ubz48?start=66&end=85&version=3&modestbranding=1 - "So let's start with the options [...]" - Bayonetta review