Extension:Education Program/Roadmap

This is a first draft of a proposed roadmap (by me).--Sage Ross (WMF) (talk) 19:16, 22 February 2013 (UTC)

February/March/April 2013
While many classes are still actively using the extension, development will continue to focus on bug fixes and usability improvements that do not depend on ContentHandler or Echo integration.


 * Sage
 * Implement 1-2 example DYK boxes, encourage community development of more
 * Awaiting fix for default DYK category
 * Implement the current wizard header as MediaWiki:Course header, add in context links from the current header (once it deploys, expected March 11)
 * Tried but reverted because of.
 * Create design requirements for potential consolidation of Online and Campus roles (as far as the software is concerned)


 * Jeroen


 * Make course activity feeds (a la Special:MyCourses) for individual courses available for any user to view
 * Fix the bug that sends users away from the javascript dialog for removing students or reviewers
 * Fix the 'Add myself as review' bug where the button shows up on the next line in the wrong column
 * Fix the phantom log entries
 * Get some version of Special:EducationProgram working
 * Other bugfixes and improvements to be decided by Jeroen.

May/June/July 2013
Many needed improvements to the extension either depend on or 'come for free' with switch to ContentHandler, but it's a bigger project and has a higher risk of causing disruption during and after implementation, so it should wait until after the first wave of classes is largely finished.


 * Jeroen
 * Switch to ContentHandler for handling course pages
 * Make changes to Page text (at least) show up as edits rather than log entries
 * Show diffs for changes to 'page text' on course pages.
 * Show section [edit] links on course pages (bug 43864)
 * Add course pages to the watchlists of enrolled students, instructors and volunteers
 * Consolidate Online and Campus roles in the extension


 * Sage
 * Conduct user testing for course page creation and usage
 * Work with designers to create new layout for course pages
 * Create design requirements for building -type functionality into the extension
 * Create design requirements for Echo integration
 * Create design requirements for intra-class communication tools

Down the road

 * Jeroen
 * Echo integration to replace or supplement Special:MyCourses
 * Implement intra-class communication tools
 * Support for groups within a class


 * Someone
 * Improved analytics
 * Add a method for tracking completion of training into the course pages

Wanted features for Special:MyCourses / course tracking

 * Any user can use Special:MyCourses to monitor any courses, whether or not they are participating (as instructor, volunteer or student).
 * This could be done by enabling the watchlist star for course pages, which assigns users to a new (unlogged) "watcher" role for the class.


 * Users can view earlier edits at Special:MyCourses when they reach the end, and/or can increase to the date range of edits shown to 7 or more days.


 * User preference to splice together activity from all of MyCourses instead of listing each course separately (creating a usability problem for using watching multiple courses and checking Special:MyCourses frequently to monitor new activity)


 * A way to view activity from all courses at once (spliced or unspliced)

Analytics and similar

 * Show students from Passed courses who are still active

Echo/Notification integration
We probably want Notifications to supplement, rather than replace, Special:MyCourses. Some things to have notifications for:


 * Student article is deleted: notify instructors, volunteers, student working on that article, reviewers for that article
 * Student article is tagged for deletion: notify instructors, volunteers, student working on that article, reviewers for that article
 * Student article (or talk page) is edited: notify student working on that article, reviewers for that article
 * Student article is created: notify instructors, volunteers, (maybe) all students
 * Course talk page is edited: notify instructors, volunteers, all students
 * Student enrolls: notify instructors, volunteers
 * Student adds article: notify instructors, volunteers

Backlog / ideas list
These are things we might, or might not, want to do at some point.


 * A way for course volunteers to advertise their particular skillsets, so that students have an easier time figuring out who to ask for help. (This could be particularly relevant for volunteers who are not supporting any particular class but want to help when needed in their particular area of expertise.)
 * Ability to re-use the same course page for a course that is run multiple times with new groups of students (without simply removing the previous group and therefore destroying the info about who was editing together)