Science:MER/Manual/Design

From UBC Wiki
MER Manual
Math kid.jpg
Table of Contents

The MER wiki was originally designed and implemented by David Kohler and features innovative use of Mediawiki templates and categories, and the DynamicPageList extension. It has since been maintained and further developed by Bernhard Konrad, Christina Koch, Steve Bennoun, Alfred Xing, and others.

Templates

A quick glance at our Installation Guide will reveal that the MER wiki architecture heavily uses Mediawiki Templates. Templates are special wiki pages that are designed to be included on multiple wiki pages; the Mediawiki term for this type of embedding is transclusion.

One example of template/transclusion design in the MER wiki is our question page. Each exam question is on its own question page, with the format drawn from the template

{{MER Question page}}

The individual question content is on separate subpages that are then included in the question page via the template. Use of this template allows us to:

  • make changes in one location (the template) and have it reflected on many pages
  • easily create identically formatted pages without having to copy all the relevant code

Templates can also be written to take arguments or parameters. The template

{{MER Question page/box}}

takes three parameters determining the format of the collapsible boxes that appear on the question page. Similarly, the headers for course pages, taken from

{{MER Course}}

also use a parameter based on the course pages URL to create a header with the appropriate text.

Note: you can also transclude normal wiki pages, not just templates. If you compare the Science:MER/Contributors Guide and Science:MER/Manual/How To, you'll see that the section on Adding a Picture is identical on each page, and is transcluded from the page Science:MER/Adding pictures via the command

{{Science:MER/Adding pictures}}

just as the templates are.

For more on our templates, see the installation page. For more details on general template creation and use, see the official Mediawiki pages on templates and transclusion.

Categories

The MER wiki draws heavily on the Category feature supported by MediaWiki. Categories, indicated by double square brackets and the namespace "Category",

[[Category: ]]

can be inserted into any page on a wiki. The category won't show up in the content of the page, rather it will appear as a link at the bottom of a page. It is, in essence, a tagging system that allows users to easily find all pages that have been similarly categorized.

A quick scan of wikipedia shows that the primary use of categories is for content tagging. We have used categories in this conventional sense to tag individual question pages by topic, allowing students to find all questions that require a similar skill or concept. One of the exciting possibilities for the future of the MER wiki is the creation of other similar exam resource wikis on the UBC wiki. Because categories apply wiki-wide, skills that are needed across disciplines could be tagged with shared categories that allow students to access sample problems/solutions not only in their discipline, but in others as well.

In addition to content tagging, we have also used categories in much more innovative ways. Categories serve as the basis for our peer-review system, where each question and exam page has a category or list of categories indicating its status in the peer review process (needs writing, needs review, needs fixing, good quality - see more details here). Categories also allow us to tag all of our main pages and templates for a quick and easy listing of all pages in the MER wiki (see Category:MER, or all templates in current use (Category:MER_Template ).

Dynamic Page Lists

DynamicPageList (third party) is a Wikimedia extension that allows for easy, automated list creation. One can choose a wide variety of parameters (page title, page content, last edited by, category, etc.) to generate a desired list. There are additional parameters to customize how the list is displayed.

Nearly every list that appears on the MER wiki is generated via DPL. Some examples include:

  • Our list of most recently updated discussions and pages on the contributor's page. See here.
  • A list of questions flagged with a particular quality control flag, for example RS (review solution). see here.
  • The table of contents on the right side of every question page. See here.
  • The table of contents infobox on this page.
  • List of exams on a course page. See here.

For more details on DPL, see the UBC wiki help page. For official documentation, go to this overview or this full parameter list.

Limited Viewing/Editing

The MER wiki is located in a "protected" namespace (Science) of the UBC wiki, meaning wiki users must be granted permission to edit within the namespace (and thus edit MER wiki pages). This provides a measure of control over who can edit questions and solutions. In addition, there are certain features that are only visible to those with editing powers. Visibility by editing rights is determined by the following code:

{{#ifgroup:science  }}

For details see the Right Functions MediaWiki extension

Auxiliary Tools

Besides design of the actual MER wiki pages themselves, we have used several online tools to help organize and manage the contribution process to the wiki. While the organizing committee and contributors hold occasional face-to-face meetings to discuss projects and add content, most of the work occurs indivdually online. To coordinate these efforts, we have used several online tools:

  • The wiki itself: The Science:MER page serves as the contributor's portal. Separate from the public front page, this is the hub where all contributors can find out what's going on. The MER page and its subpages also includes a contributor's guide, manual, and other reference information about the project.
  • Google Drive: Extra documents and information - publicity posters/emails, data files on wiki use, private copies of solutions, grant applications - are stored in a Google Drive folder. The Google Docs format, and its comment feature, was particularly useful for grant-writing, as it allowed for collaborative writing/editing.
  • Hojoki: The organizing committee and most active members are part of a Hojoki workspace (which is integrated with the Google Drive folder), which includes a feed for forum style discussion, and a task feature for assigning and tracking miscellaneous tasks related to managing the MER wiki.