User:Isarra/talk



Let's start at the beginning.

Talkpages suck. Now they're awesome in many ways, but because that's all they are - pages that are used for talking - they are harder to use than they really need to be. But because they are pages, and because people talk on them, they have certain features that do make them useful, and have developed certain workflows through which folks approach them. Though the things themselves need replacing, ideally these useful aspects and workflows will be largely maintained.

At some point folks decided the solution to the problem of replacing talkpages was to implement some sort of message board - a thing somewhat like a forum, with posted comments and replies each acting as their own object on the board - and thus we've gone through a few implementations: LQT, Message Wall, comments on articles. All, in various ways, kind of sucked, but Message Wall proves it is at least doable and can potentially be an improvement (whereas even that potential is often debated with LQT).

A message board-type thing
Let's just start from the beginning with the message board.

A message board consists of four things:
 * A container - the page on which it appears, or potentially any space where a bunch of threads wind up if it can be arbitrarily inserted like fora using Extension:DPLforum. Basically the container holds the threads.
 * The container contains:
 * Threads
 * Filters
 * Searchability
 * A set of actions/tools - delete, lock, add a thread/topic/whatever, mark all read


 * Threads - related groupings of comments/replies, also potentially referred to as 'discussions' if one wants to be optimistic about the nature of the project. On a talkpage a thread would be analogous to a section.
 * These might be attached to a particular page or topic, but a single thread could appear in multiple containers as relevant - for a thread about how a policy applies to an article, it could appear in both the article's talk container and the policy's (just don't ask how the thread would figure out that it is relevant to both of these).
 * Each thread would have a title for the specific discussion, say, "Proposal to revoke BWilkins' adminship" - after which would come the first poster's comment explaining why they don't want BWilkins to be an admin, and the rest of the ensuing drama would take place in subsequent reply comments indented according to which particular other person the each poster is inclined to yell at at the time.
 * A thread contains:
 * Comments
 * Titles
 * A set of actions/tools - edit, delete, lock, etc
 * Collapsibility
 * General reply functionality
 * Tagging/categorising functionality
 * General information about the thread - Time, commenters involved, number of replies, containers it shows up in


 * Comments - these make up the threads, either starting a thread, or replying to another comment. All comments in a thread are children of either other comments or the thread title. The first comment is a child of the title, as would be any outdented comments getting back to the original point or merged in comments from a duplicate thread, if such is supported. The rest reply and discuss like civilised people. Things. Objects.
 * Each comment contains:
 * Poster's username, avatar, user information, actions on user (block, directly contact, etc)
 * Message - the actual content/text of the comment
 * Time of post, other info
 * A set of actions/tools - edit, delete, move, protect, etc
 * Reply/quote functionality