WikiEducator roadmap/Support contextualization of content
In the development of free/libre and open source software, it is common to create so-called branches of content in order to ensure that experimental or controversial changes can be made without affecting mainline development. A branch is, in the simplest interpretation, an identified copy of the information (including its history) which can then be developed separately. Changes from one branch can be merged into another. Some version control systems support so-called changesets, i.e., rather than having to merge all edits from one branch to another, one can choose to reject particular changes and accept others. When such a merge occurs, it can be history-sensitive, meaning that the next time a merge is needed, the user will not have to approve (or reject) a change they have already reviewed.
Intuitive branching and history-sensitive merging within and in between MediaWiki installations would be the most logical way to facilitate the creation of contextualized learning materials, e.g., a module adapted for a specific syllabus. However, this poses unique challenges, especially of usability: while software developers can be expected to deal with complex tools to manage such processes, ordinary users must be presented with tools which conceal much of the underlying complexity, and focus on the content the user deals with. The MediaWiki backend also does not currently support branching.
Hence, full support for efficient contextualization is clearly one of the most daunting technical challenges for future MediaWiki development, but also one of the most promising.