Thoughts on the ideal conversation platform

Originally posted on Reddit on 2017-03-31

It occurs to me that the ideal forum probably would have these three attributes.

  • Each comment can have multiple children. Conversation threads can be followed even after they diverge (e. g., when two people reply to the same comment).
  • Each comment can have multiple parents. Conversation threads can be followed even after they converge (e. g., when one person replies to multiple comments).
  • All comments are easily searchable by full text and permanently archived. Conversations can be found and read long after their original production.

Compare some real conversation platforms.

  • On Reddit and Voat, a comment can't have more than one parent. Conversation threads can't converge and be consolidated. If I want to reply to multiple people with one comment, I have to use username alerts for all but one of them.
  • On XenForo and vBulletin forums, a comment can't have any children. You can follow a conversation thread backward, but you can't follow it forward!
  • On anonymous imageboards, archival is temporary, incomplete, unsearchable, and/or conducted primarily by third-party sites.

(I don't at all understand the popularity of Discord.)

Further thoughts

  • Header: ID, author, time, inReplyTo, inContinuationOf
  • Div: Content (including inReferenceTo)
  • Footer: Lists of replies to, references to, and continuations of this message

Replies, references, and continuations are separate types of links. Very often, a user wants to reply to a comment (and implicitly request a response from its author by sending an alert to that person), reference a comment (without seeking to include its author in the conversation), or continue a comment (perhaps due to a character limit).

Et cetera

  • Each message (except the ultimate root) is at least one of a response and a reference.
  • Users can filter messages by looking only at the response-descendants or the reference-descendants of a particular message.
  • A moderation mechanism (whether user-directed or moderator-directed) can remove off-topic messages from the tree by removing replies, references, or continuations. (For example: Message B is an off-topic response to Message A. Message B is displayed in the list of responses to Message A. A moderator can remove it from the displayed list of responses to Message B, but without actually breaking the response link.)


According to section 3.6.4 of RFC 5322, an email message can have multiple parents (i. e., multiple message IDs in the in-reply-to header field). At least one email client (Mutt) allows the user to manually type multiple message IDs into the in-reply-to field of a message. Unfortunately, however, it seems that no email client has embraced this functionality to completely supplant forum software; the universal focus is on showing merely a linear thread.