Flow/Catalan

Flow is a project of the Collaboration team at the Wikimedia Foundation to build a modern discussion and collaboration system for all Wikimedia projects. Flow will eventually replace the current Wikipedia talk page system and will provide features that are present on most modern websites, but which are not possible to implement in wikitext. For example, Flow automatically signs posts, threads replies, and permits per-topic notifications.

The main goals for the Flow project are:
 * 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

Flow is currently deployed on several talk pages on French, Hebrew and English Wikipedia, and on MediaWiki.org. Flow will be released incrementally, as a limited beta. We want this product to change and grow over time, based on the experience and feedback of the people who use it.

Rationale
New users on English Wikipedia have become less and less likely to participate in on-wiki discussions, in spite of a growing and mostly automated body of messages directed at them. We also know that free-form wikitext talk pages present a significant barrier to new users  and even some experienced users.

In addition, experienced users often employ a suite of workarounds to help them manage and keep track of the many ongoing conversations that they're involved in, using tools that aren't necessarily well-suited to the task. For example, watchlists and diffs are page-level tools, making it hard to distinguish between the conversations that users are interested in and the ones that they're not. Experienced users can waste a lot of time checking diffs on an active talk page, especially if the most active conversation isn't the one that they're interested in following.

We believe that user expectations for a modern discussion system are increasingly diverging from the reality of talk pages today, and that all of our users deserve discussion and collaboration software that meets their needs.

Users expect a modern and intuitive discussion interface. Talk pages—as a discussion technology—are antiquated and are not intuitive.

Users are surprised by the cultural norms of the community. Many things about the culture that has grown up around talk pages (such as "talkback" templates or being able to edit other people's comments) are confusing. That is not to say those conventions are wrong, merely not what those users are prepared for.

We believe that a modern user-to-user discussion system will improve the projects. Better methods for collaboration will improve collaboration, which will improve all of the projects.

Is this replacing talk pages?
Yes, but not for a long time. Talk pages are used for many different reasons -- some simple, and some very complex. The team is working on the basic use cases first. Features are being added in an iterative way; we plan on rolling this feature out gradually as it meets the requirements for a particular use case.

At some point in the future, once the software is stable and a significant portion of active Wikimedians have had a chance to trial it and offer their feedback, we may mandate Flow on all discussion pages, but we have a lot of work ahead of us before that happens.

What pages will be Flow-enabled initially?
As of December 2014, Flow is enabled on Mediawiki.org, on several Beta Features talk pages, including Talk:Flow, Talk:Winter, Talk:Beta Features/Hovercards and Talk:Content translation. On EN.Wikipedia, it's live on WikiProject Breakfast and WikiProject Hampshire, and two test pages. On the French Wikipedia, it's live on fr:Discussion Wikipédia:Flow and fr:Wikipédia:Forum des nouveaux/Flow (a help page for newcomers). On Hebrew Wikipedia, it's live on he:שיחת ויקיפדיה:זרימה.

In late 2014, we will increase the number of places where Flow is deployed; these deployments will occur with consensus from community members who use those discussion spaces.

Can I opt out?
In terms of viewing, you won't be able to opt out of seeing Flow. If other users have converted their talk pages to Flow pages, or reached consensus that a Wikipedia or article talk page should be converted, there's not going to be a way to avoid using Flow if you want to contribute to that page.

What will happen to current talk page discussions?
When Flow is enabled on an active wiki talk page, the existing dicussions will be moved to an archive page. There will be a clear link from the Flow board to the archive page. Old discussions will not be "thrown away"; we know how important discussions are to understanding the collaborative history of a wiki page or project.

We probably won't be able to "convert" wiki talk pages into the Flow format, because there isn't a clear one-to-one correspondence between a wiki talk page edit to a Flow post. It may be more respectful to the discussions if we preserve the original format, on an archive page. However, archived discussions need to be accessible through search, and we're working on finding the most efficient way to do that.

What about IP/anonymous editors?
Anonymous users will be able to use Flow-enabled talk pages as any other user. However, subscriptions to individual topics, and notifications based on those subscriptions, will only be available for logged-in users.

Why don't we use a pre-built system, like PHPBB or Discourse?
The simple answer is that "they won't cut it". The complex answer is that pre-built systems are designed around singular use cases, and Wikimedia projects do not have "singular" use cases. On the English Wikipedia alone, the following are discussions that take totally different forms: The list goes on and on. A singular package will not and cannot cover these cases. So we have to build our own.
 * User talk
 * Article talk
 * Requests for Comment
 * Request for Adminship
 * Deletion discussions
 * Merge discussions
 * Village pump discussions
 * AN/I
 * Arbcom cases

Why not use LiquidThreads?
LiquidThreads (LQT) was an early attempt at creating a structured discussion system. It has both strengths and weaknesses. After exploration and discussion, LQT was abandoned as a solution going forward for several reasons: poor performance, due to the way individual comments or posts are stored, parsed, rendered, cached, and assembled; no support for globally unique identifiers; and lack of flexibility with regards to workflows and collaboration techniques beyond simple discussion.

We now have a script that converts LiquidThreads posts into the Flow format. Old LQT conversations won't be lost.

How will Flow handle spam and vandalism?
In the current release (Decemnber 2014), each topic and individual post come with a set of moderation features. These are:
 * 1) Hide (equivalent to reversion/rollback);
 * 2) Delete (equivalent to revision-deletion), and
 * 3) Suppress (equivalent to oversight or suppression)

Handling spam and vandalism in Flow should actually be easier than dealing with it on existing talk pages. Because Flow topics and comments exist as discrete elements, a specific post can be removed with a single set of actions: there's no need to go through the page history removing intervening comments, for example. In terms of spam, Flow is integrated with the AbuseFilter and the global and local Spam Blacklist.

Will Flow support wikitext or VisualEditor?
Both. Flow is linked into Parsoid, which is the software that VisualEditor uses to read and write wikimarkup. Hooked into that is a wikitext editor and, in later releases, VisualEditor. Users will be able to pick which they want to use.

Will Flow support all the templates and other markup we need in discussions?
Yes. Whatever markup Parsoid supports, Flow can support. There may be restrictions on certain magic words or complex templates that affect performance, but, generally speaking, anything users commonly need to use (mathematical symbols, references, templates) can be added to a Flow post. You can see and test templates and other markup in the prototype, eg this topic has some examples.

What happens to my custom signature?
Flow will not directly support custom signatures, for a couple of reasons.

The first is that they're disruptive from a UI point of view. Custom signatures are great for letting people know who said what; they allow for a specific user to be easily, visually distinguishable in discussions. The problem is that the way this comes about is by allowing refactoring of where links live, how they're displayed, and so on. As a result, there's a complete lack of consistency, which hurts the ability of users to navigate easily. One user might have their talkpage link in one place – another in a different place, and with a signature that doesn't actually reveal their username. The second is technical; allowing people to add raw HTML formatting into Flow boards could cause serious issues and errors in how the page is displayed.

Having said that, we appreciate the advantages of custom signatures; it allows for some distinguishing elements, it allows for forms of identification that extend beyond username. We're going to be working a "preferred name" field into the interface to allow for the latter; while it won't be as malleable as the status quo, it will allow for some originality. Your own posts will be visually highlighted to be more easily findable.

Will we be able to edit other people's posts?
As of December 2014: Not yet, but it's something that we'll be working on soon; we want to match the expectations that wiki users have that they can make helpful edits on other people's posts. A post that's edited by a different user will have "Edited by (username)" next to the timestamp, with a link to the topic history so that users can see what's been changed.

Who is working on Flow?
The Flow team focuses on delivering a delightful experience for user-to-user interactions.


 * Erik Bernhardson (ebernhardson) - tech lead
 * Matthias Mullie (mlitn) - engineer
 * S Page (spagewmf) - scrum master
 * Quiddity (quiddity) - Community Liaison
 * Danny Horn (dhorn) - Product Manager
 * Pau Giner (pginer) - UX Designer
 * Matthew Flaschen (superm401) - engineer

Contact and links

 * Flow development team processes
 * IRC channel:
 * Editor Engagement mailing list
 * Test instances and locations: ee-flow, flow-tests, beta.wmflabs
 * Phabricator: open tasks, all tasks, submit new task