User:Dcoetzee/The Wikipedia Adventure/Storyboard and implementation plan

Menus
When the player first enters the tutorial they are presented with the main menu. It offers options: After choosing a play option they are given a level menu listing all levels they have unlocked. They can go back and play previous levels at any time. Their high score for each level is shown (perhaps abstracted using stars, like Angry Birds).
 * Play intro levels
 * Play advanced levels
 * Options
 * Quit

Introductory lesson overview
The goal of the introductory lessons is to teach the bare essentials needed for a contributor to begin achieving their immediate goal, which is usually adding or editing a specific entry on Wikipedia. Lessons would be as small as possible, focusing on a single concept or task taught in-context. The lesson sequence is as follows:
 * 1) Making a minor edit to an existing page, such as a spelling correction, without logging in. Include an edit summary. Before proceeding to next lesson the user must actually make such an edit on the real project. Can skip if they've made an edit before.
 * 2) * Justification: In our experience, the act of making an edit and having it show up on a live article immediately is very motivating. This will help encourage completion of the remaining lessons. Moreover, it is very straightforward.
 * 3) * Note: Verifying the real edit is a bit technically challenging. The easiest way is to record the user's IP and then look for at least one edit to an article by that IP address.
 * 4) Registering an account. Username policy (basics). Must create real wiki account before proceeding to next lesson. Can skip if they already have an account.
 * 5) * Justification: It simplifies the jobs of other volunteers if new contributors have a consistent identity, and makes them easier to mentor and track.
 * 6) Leaving messages on article talk pages. Civility policy (basics). Must leave message on a real article talk page before proceeding to next lesson.
 * 7) * Justification: Leaving messages on article talk pages is something any casual reader can do without prompting, and is a bit easier than responding to messages.
 * 8) (optional) Conflict of interest policy (basics), such as declaring conflicts on their userpage.
 * 9) * Justification: Many new users have some kind of conflict of interest with the topic they want to write about. Those who don't can skip this lesson.
 * 10) Receiving messages on user talk page and responding to them. Using user talk page link in upper-right. The game will leave them a message on their real talk page to which they must respond to continue.
 * 11) * Justification: The user talk page is the main venue for personalized feedback during actual editing and the user must understand how to use it.
 * 12) Getting help from Help desk.
 * 13) * Justification: Once a user learns to use Help desk, they can ask about any topic they need there in the future and get personalized feedback, going beyond topics covered by the lessons.
 * 14) Starting a new article in a sandbox. Submitting to Articles for creation with.
 * 15) * Justification: Many new users are interested in starting new articles. Starting them in the main article space can lead to negative experiences like rapid deletion and lack of feedback. AfC will give good personalized feedback on how to improve a new article submission.
 * 16) How to select reliable, independent sources. Basic (non-inline) references.
 * 17) * Justification: Even a poorly-written article using no formatting will likely be retained for improvement if it has good references. Other editors can help fix up bad reference formatting.
 * 18) Copyright violations. Users interactively compare source content to article content, and select the choice that is not too similar.
 * 19) * Justification: Many new users come from cultures where plagiarism is widespread and accepted. Copying from sources causes serious legal and logistical problems down the road.
 * 20) Intro to formatting: bullet points, sections, inline references.
 * 21) * Justification: Nearly all new articles use these formatting features. Clearly identifying which facts came from which sources makes it easier for others to check and evaluate them.
 * 22) Neutral point of view (basics, no undue weight, etc).
 * 23) * Justification: One of the five pillars. New articles that are written with a promotional point of view are often treated harshly by other editors.

Things omitted from introductory lessons:
 * How to do additional formatting (bold, italics, tables, etc.)
 * Justification: Other editors can add these. They affect quality of presentation but are inessential.
 * How to do internal links and external links.
 * Justification: Adding links (wikification) can be done later by anyone. Plain URLs can be pasted into the text window and create links automatically.
 * How to add categories.
 * Justification: Again other editors can do this task, and know the existing category hierarchy better.
 * Adding images.
 * Justification: Adding images is a complex topic, involving understanding of applicable copyright law and image syntax. It's better to either ask for help with these, or learn about them later.
 * Edit conflicts.
 * Justification: These are unlikely to occur, and the edit conflict page explains things pretty well.
 * Dispute resolution.
 * Justification: Most new editors are not likely to encounter disputes right away, either because they're writing an article of their own or editing in a non-controversial area.
 * Creating user page.
 * Justification: Although creating a user page helps other editors know what a new user's interests and biases are, except in case of a conflict of interest these are not essential for us to know.
 * Use of watchlist feature.
 * Justification: Newbies edit small numbers of pages and can effectively check them manually.

Outline of a lesson (with mockups)
(mock-up screenshot produced by collaborator User:Sonia)
 * Opens with summary of lesson goals, with option to skip lesson (for most basic lessons)
 * User always starts at Main Page and must navigate to the lesson location
 * Except for entering text, user must perform every user interface action normally as on the real website.
 * Instructions appear at each step in a box. The instructions proceed automatically as tasks are completed.
 * If the user needs to add/remove/modify wikitext content, a box giving several choices appears
 * The user's score is updated in real-time based on their performance, and they may receive achievements with celebratory messages.
 * At end, shows a summary of their performance throughout the lesson and links to next lesson.
 * If in lesson pool, also links to related lessons and related on-wiki links. Introductory lessons do not include such links, to avoid distraction.
 * Sometimes, progress to the next lesson may be contingent upon completing a certain on-wiki action.

Video
(mock-up video produced by collaborator User:Sonia)

Implementation plan
The prototype will be built on top of the existing Mediawiki software using Javascript and other changes to the underlying server. To support the application, a number of modifications are needed:
 * Links that do not move the lesson forward need to be disabled, to prevent wandering.
 * Changes by users must be isolated and not be remembered after the lesson is over, or affect other users.
 * It needs to be possible to superimpose instructions and highlight user interface elements to indicate where to go next.

Completed functionality: For the subset of lessons that are implemented, functionality and appearance is expected to be complete. Most of the visuals and interface come from the existing Mediawiki platform, and the Mediawiki software can be leveraged to emulate it. Superimposing instructions and basic characters should be straightforward. Lesson text can be easily revised in response to feedback. The lesson builder will not be implemented this term.

Many lessons include a task that must be completed on Wikipedia to continue. This can be verified easily via the Mediawiki API by having the user enter their username into the game. Special provisions are needed for Lesson 1, as mentioned above.