Structured Discussions


 * For information on how to install and use the Structured Discussions extension, see Extension:StructuredDiscussions.

Structured Discussions is a project of the Global Collaboration team at the Wikimedia Foundation to build a modern discussion system for Wikimedia projects. Structured Discussions provides features that are present on most modern websites, but which are not possible to implement in wikitext. For example, Structured Discussions can show readable threads on mobile as well as desktop, automatically signs posts, threads replies (with an in-database relation between each), and permits per-topic notifications.

The main goals for the Structured Discussions project are: Structured Discussions has been deployed on user talk and wiki-wide discussion pages on various languages in the Wikimedia content projects, as well as on Mediawiki.org – see Structured Discussions/Rollout. On some wikis, it is available as an opt-in Beta feature, allowing users to turn on Structured Discussions for their own user talk page – see Structured Discussions/Request Structured Discussions on a page.
 * to make the wiki discussion system more accessible for new users
 * to make the wiki discussion system more efficient for experienced users
 * to encourage meaningful conversations that support collaboration

Structured Discussion was formerly known as “Flow”. Flow was a bigger project that has been re-scoped to focus on user-to-user discussions. The software has been renamed to reflect this change.

History
After the initial development round, Flow has been in active maintenance mode, with no major development since mid-2015; no significant new features have been added since then. The team continued to support the product and fix bugs and to make sure that people who were using Flow continue to have a good experience.

The Collaboration Team remained interested in the project and in providing an improved system for structured discussions. Communities have also expressed interest, by requesting Flow for testing or for real-cases use. To make decisions about the way forward in this area and future developments, a survey was sent to many Flow users in September 2016; the results were published in February 2017. Those results have been used to make the Wikimedia Foundation’s plans.

Structured Discussions improvements are a goal of the 2017-2018 Fiscal Year development plan, focusing on search and interactions between topics.

Development status
The following schedule is indicative. These tasks may improve other Structured discussions features.

July–September 2017

 * Rename the software - interface, repos, files; not databases. (T174137)
 * New topics and posts on structured discussions will have wiki text storage instead of HTML (T174374)

October–December 2017

 * Front-end rewrite to use OOjs UI – no significant changes in design. (T100269)
 * Search on Structured Discussions
 * On-page (board) search (T76823 and T106767)
 * Wiki search integration  (T62493)

January–March 2018

 * Move topics from one board to another. (T88140)
 * Move comments within a topic. (T95118)
 * Filter topics on-page for "don't show me discussions marked as Resolved" (T76823)
 * Human-readable topic URLs (T59154)

April–June 2018

 * Overflow for work above.

Deployments
Structured Discussions are available on certain wikis. Those wikis will automatically get the new features and improvements.

Wikimedia wikis that don’t have a Structured Discussions board enabled will not have Structured Discussions activated, unless they request to activate Structured Discussions. This request is only possible if they have reached a consensus.

Components of the current discussion system
You can have a look at the quick tour to discover the most important features.

Overall design

 * Design density: readability is improved and eye-fatigue is diminished by a more airy design
 * Topic order: topics are displayed from last-added to first-added, like it is on most discussion systems on the Web.
 * Message separation: different messages in the same thread will be visually distinguished through design cues.
 * Navigation and archiving: the software features infinite scrolling on a Structured Discussions board, with all of the discussions accessible on the same page. A Table of Contents in the side rail to help users navigate quickly between topics on a board.

Notifications and interactions

 * Topic namespace and links to replies: each topic is a separate page and every message has its own link to ease quoting.
 * Notifications: a set of notifications ease topic watching. Users are notified when a new message is created on a page they watch, or if a reply is posted on a topic they watch. Notifications link directly to the messages.

Add or edit messages

 * Input method: the visual editor and wikitext editors are equal input methods, users can switch back and forth at anytime.
 * Threading: Messages are posted below the oldest one and don’t require editing a whole section. There is no need to know the threading system using wikitext, reply buttons provide two sets of indentations for digressions.


 * Auto signature: each message is automatically signed and timestamped.


 * Editing messages: each message can be edited (depending on user’s rights) without editing the whole section of messages. If someone other than the original author edits a comment, that fact is highlighted.
 * Mention users: mentioning is eased by a mini-search system.

Message moderation

 * "Hide", "Delete" and "Suppress" - analogous to revert, revision-deletion and oversight - are available on Structured Discussion. Users also need the ability to delete/suppress entire threads.
 * Since threads can potentially exist on multiple discussion pages, a protection system that is equitable to users is difficult to get just right.
 * User links automatically include links to their contributions and block links, to help sysops deal with disruption quickly and effectively.

Development principles
With any complex software project, it's almost impossible for the designers, developers and product people to know everything. This is a particular problem in an environment like that of the Wikimedia projects - due to the sandbox-like nature of the place, there are tens of thousands of different workflows, different user needs, and different problems. Even if we could accurately identify all of them, we can't necessarily tell if our solution is the right one until we put it in front of users.

Accordingly, we're keeping two things in mind while we're developing the Structured Discussions software. First: we are partners with the community on this. Editors are welcome and encouraged to participate in the development process, pointing out things we've missed, identifying and describing new workflows, and helping keep us honest - when something hits this level of complexity, it's impossible to make things work without as many people helping as possible. Before and after we build things, we'll open a conversation about the feature. Second: a lot of the work we're going to do, at least initially, is experimental: we don't know if it's the right implementation of a feature. If it's not, we'll be happy to roll it back.

Who's working on Structured Discussions?
The Global Collaboration team. Product manager is James Forrester.

Contact and links

 * IRC channel:
 * Phabricator:
 * Collaboration team (the primary task management locations): Current, Backlog
 * Structured Discussions (as Flow): open tasks, all tasks, submit new task