Wikia

Community Central

Comments0

Test drive myContent and myLZ

Najevi December 22, 2009 User blog:Najevi

Background

In the recent past I have :

  • written about the "my landing zone" concept here,
  • speculated on the use of a specially named User_blog page to customize the redirect from <domain>.wikia.com here and
  • demonstrated your ability to clean up some unwanted clutter in the Monaco sidebar here.

Since then I have experimented with the Gadget Extension and discovered how relatively easy it is to setup these features today without any special development requests of Wikia. An important aspect of this is that it is provided on an opt-in basis.

  • This is in contrast to the opt-out approach that is being used for the MyHome page. Don't get me wrong, I very much understand why the opt-out approach was used.
    The sad fact of the matter is that the population of users who will opt-in to some newly available feature tends to be very small just as the population of users who will opt-out of some new default feature is very small. So the best way to get a new feature introduced to the widest possible market place (and thereby solicit a lot of feedback in as short a time as possible) is to make it opt-out and deal with the albeit vocal minority that decide to protest.

my Landing Zone

Enables a motivated user to create a 100% custom "home page" for each wiki they visit. It leverages the widget as the elemental building block and also the .ui-sortable class that makes Special:WidgetDashboard so easy to customize. The outside-the-square-thinking here is that widgets are no longer bound to a 206px wide box. Once a widget is removed from the Monaco sidebar context, it is even reasonable to increase the max-height of a widget.

myLZ can be offered at any wiki as an opt-in style check box on the Gadgets tab of a user's Preferences page or it can be adopted as a user's global default (Wikia-wide) via global.js and global.css.

  1. Learn how to use the myLZ Gadget at w:c:vsk:MediaWiki:Gadget-myLZ/doc
  2. Learn how to adopt myLZ in your global.js/global.css at User blog:Najevi/A WidgetDashboard approach to a truly custom MyHome page

my Content

Recovers all of the browser window space that is normally lost to various promotional content, advertising and WikiPage widgets that fail to load. Most of the clean up happens in the sidebar and all but one or two filtered items are easily viewable at your widget dashboard so the content is never unilaterally blocked it is merely relocated according to each user's preference.

myContent can be offered at any wiki as an opt-in style check box on the Gadgets tab of a user's Preferences page or it can be adopted as a user's global default (Wikia-wide) via global.js and global.css.

  1. Learn how to use the myContent Gadget at w:c:vsk:MediaWiki:Gadget-myContent/doc
  2. Learn how to adopt myContent in your global.js/global.css at User blog:Najevi/Cleaning up the sidebar when "fail to locate" a WikiPage widget




Room for improvement

I mentioned that none of the above require special support from Wikia staff. That is not completely true. A handful of bugs in the widget framework were identified in the past several weeks and uberfuzzy has been especially responsive in dealing with those.

The sections that follow describe requests for improvement that are not "low hanging fruit". I may not have asked for them in the same context as I am asking now but the subject has come up and I accept that, at least for the time being, these ideas may not be chosen for development effort in either the widget framework or the User table framework.

  • A little community discussion may lead to some even better ideas than those put forward here.

Per-wiki overrides for Wikia-wide user preferences

I imagine that a user_blog:<username>/MediaWiki page ought to be used to allow various user preferences to be overridden on a per wiki basis.

Why a user_blog page? 
A page in the User_blog: namespace is able to be edited only by the user named. Of course any user can view this page however most user preferences do not reveal any sensitive information.

This is a little more flexible than the current user table approach that enables user preferences to take effect on a Wikia-wide basis. Both are necessary.

  • The user_blog:<username>/MediaWiki proposal simply allows a user to override their global preference on a per-wiki basis.
Why is this needed?
These are merely the items I find significant. Perhaps another user would come up with a different/overlapping list.
  1. Allow the redirect from <domain>.wikia.com to be tailored for each wiki visited. (e.g. specifying Special:WidgetDashboard would dovetail nicely with the myLZ Gadget at those wiki's which support it) :
  2. Override Email settings on a per-wiki basis:
    • * E-mail_me_when_a_page_on_my_watchlist_is_changed | [false|true]
    • * E-mail_me_when_my_user_talk_page_is_changed | [false|true]
    • * E-mail_me_for_minor_edits | [false|true]
    • * E-mail_me_a_Weekly_Watchlist_Digest | [false|true]
  3. Override Skin preferences on a per-wiki basis:
    • * Skin | [Sapphire|Jade|Slate|Smoke|Beach|Brick|Gaming|MonoBook]
    • * Show_all_advertisements | [false|true]
    • * Let_the_admins_override_my_skin_choice | [false|true]
  4. Override Editing preferences on a per-wiki basis (maybe not all edit preferences but at least these) :
    • * Enable_Rich_Text_Editing | [false|true]
    • * Mark_all_edits_minor_by_default | [false|true]
    • * Prompt_me_when_entering_a_blank_edit_summary | [false|true]
  5. Tailor Search preferences on a per-wiki basis (maybe not all preferences but at least these) :
    • This would be super-convenient. One could specify a different set of namespaces for each wiki you visit. Valuable for those purpose-built wikis such as Help, Central, CommunityTest, smwtest, sysoptest, etc. but also useful for those wikis which have custom name spaces either due to an extension such as Semantic MediaWiki or by special request to support some thing like a news feed or whatever.
  6. Override Misc preferences on a per-wiki basis (maybe not all preferences but at least these) :
    • * Auto-number headings | [false|true]
    • * Disable page caching | [false|true]
    • Disable my redirect to My Home - item #1 on this list addresses this feature in a much more flexible manner.
      In fact the better global preference might be a comma separated list of page links whereby the first link that matches an existing page at the current wiki is the redirect destination to be used. If such a list was accepted then one might specify:
  7. Can you think of any other "overrides" that might be popular?

Enable admins to specify default content for the Widget Dashboard

Just as MyHome showcases new wiki page content developed by Wikia staff so too should each community have the ability to prescribe the default content for Special:WidgetDashboard. This should not be limited to the 22 standard widgets but should provide for any number of custom WikiPage widgets to also be showcased at the widget dashboard.

A MediaWiki message prescribing the widgets to appear in each sidebar (_1, _3, _4 or _5) and the order within each sidebar is badly needed. viz.

* sidebar_1
** WikiPage|Wiki Page|MediaWiki:Widgetwikipage
** ShoutBox
** WikiPage|Tunngle Live List|MediaWiki:Widget-tunnglelivelist
** Tips
* sidebar_3
** WikiPage|What's new?|Project:News
** WikiPage|Recent Changes|Special:RecentChanges
** WikiPage|Useful links|:Useful_links
** NewestArticles
** Contributions
** ActiveTalkPages
* sidebar_4
** WikiPage|Community corner|MediaWiki:Community-corner
** Watchlist
** Bookmarks
** TopContent/Editor's_picks
** HelpNeeded
** MostVisited
** ImageSlideshow
** LastWikis
* sidebar_5
** TopVoted
** StalePages
** TopReferers
** WikiaSpotlight
** WikiAnswers
** MagCloud

Of course this is just a list with which to initialize the widget dashboard for an unregistered user and a user who creates a Wikia username while at the current wiki.

  • It was no accident to include sidebar_1 (the Monaco sidebar) in this example. Of course the placement of any community prescribed/recommended widgets in sidebar_1 must be subordinate to Wikia's default placement of centraly prescribed content for the sidebar.

For an already registered user coming to a wiki with such a prescribed dashboard a rather simple algorithm can be applied to merge this list with any pre-existing dashboard configuration the registered user may already have. This might seem complex but it really is not. The key to this is the auto-hiding of custom WikiPage widgets that "Failed to load". That was the subject of this recent blog.

Once the new widgets are added to their respective columns the user is free to rearrange and even delete them as (s)he sees fit.

Add custom widgets to the "Manage widgets" carousel

This carousel is activated via the (MORE ↓) button next to the "Log out" link at top right of each age. It displays the 21 standard widgets plus the WikiPage widget. Ideally the contents of that carousel would be added to as a user visits each wiki. The additional widgets would of course be custom WikiPage widgets prescribed or recommended by the local sysop(s). That list would be maintained via a MediaWiki message and would rather closely resemble the example given earlier for configuring the four sidebars.

I realize that this is not a trivial request. So I won't be holding my breath. It would be super convenient and therefore I think it important that the idea be voiced to encourage community discussion.



Well there you have it. It's a lot to have read and if you made it this far then I thank you for your patience.
I welcome any feedback or advice. I am very new to Gadgets, so I suspect that I am using only a small fraction of it's full capability.

Around Wikia's network

Random Wiki