Discussion Trees With Example

When you have a discussion, it’s important to understand what is a reply to what, and what didn’t receive a reply (especially direct questions that aren’t answered).

To track this, draw a tree diagram. Put the initial thing someone said on top, then connect replies below it. Then for the each reply, put replies to it below it and connect them. And so on. It looks like this (real discussion, then tree):

Use abbreviated versions of what was said. Treat this like an overview, outline or notes. Make it condensed so it’s easier to see the whole discussion at once. Notes (text that doesn’t represent what someone said) can be put in square brackets. The tree helps show the structure of the discussion while having only short notes about what was said.

If it gets too complicated, you can split it into multiple diagrams. Write “subtree [name]” as a reply, then make a second diagram with that name which represents that part of the tree. It’s just the same as if you had one giant diagram except you took a part of it and moved it to a separate piece of paper or computer document. You can make documents that zoom in on specific parts of the overall discussion tree. You can also make an extra-abbreviated summary tree which leaves a lot out, then make some more detailed trees for some parts.

You should do something to indicate who said what, e.g. put their initials or use different colors.

It’s good to mark what didn’t get a reply and non sequiturs (comments that aren’t responsive, don’t engage with what they reply to). You could also mark direct questions, or at least direction questions that weren’t answered.

In my example, a green outline is Jack Dorsey, red is me, and black is an anonymous poster named A. Bold indicates a direct question (I paraphrased some things as questions but only bolded if it was a question in the original text). Dotted lines are non sequiturs. Ovals are statements that were replied to and rectangles are statements that were not replied to.

You can keep a tree in chronological order if you extend the lines between replies. Each row can be a message someone sent. If someone replies to an old point, draw a long line from it down to the current row. You can draw horizontal lines the show the rows. This will help with complicated discussions. Look at how my example tree is organized in rows. You never see claims from the same person in the same row, and every row corresponds to a specific message (I wrote three messages in the discussion and I have three rows, same for A).

Trees help you understand the discussions you have. Practice making trees for many of your discussions until it’s easy. Also practice doing it with other people's discussions. (If other people's discussions are easier because you're less emotionally involved or biased, start there; if it's harder because you understand what's being said less, start with your own.) Mentally keeping track of trees like this is what people who are good at discussions do (except when they actually write notes). If you write them down a bunch of times, you’ll get way better at remembering them.

When you have a difficult discussion with someone, if you both share your tree diagrams, you can compare and see where you view the discussion differently. This helps clear up misunderstandings and other problems.

Tree Analysis

The tree diagram makes it easy to see that A wasn’t responding to most of what I said (look for the red rectangles and the dotted lines). You can also see the two things from A that I didn’t reply to. And you can see what happened with direct questions: first, no real answer, just a vaguely implied answer that doesn’t make sense (I asked the point of what he was saying and he implied no point) and then a non sequitur reply, that does not answer the question, to my followup question trying to ask the same thing again.

It’s hard to perfectly represent discussions as summary trees but you can represent a lot of information this way. It’s useful even if it’s not 100% complete. In this case, the tree leaves out an issue that helps explain why I didn’t reply to the claim that debates are irrational.

I said:

You haven't given reasons nor any way for me to learn that you're right and change my mind.

And A replied criticizing me for mentioning debate, saying:

learning from each other is what matters.

I had just complained about the lack of any opportunity to learn from him, and then he criticized me because, allegedly, I wanted to debate in a non-learning way. That’s unreasonable and it’s part of a pattern where he didn’t engage with any substantive thing I said (look at all the square rectangles, plus what happened with my direct questions).

Discussion trees are literally and technically equivalent to bullet point outlines with nesting (indenting). You nest/indent replies under what they reply to. That represents the identical information as a tree with lines indicating what is a reply to what. If you don’t understand this, practice creating both the tree and the outline until you do understand.

Making Trees

You can make tree diagrams with pencil and paper, art apps (FYI vector art apps like Affinity Designer make more sense than pixel or photo based apps like Photoshop, and more basic tools can work too, and there are mind mapping and diagramming apps), OmniGraffle, or Graphviz. For info on generating tree diagrams from s-expressions, see my email reply to Justin (who found a website which does it), sharing my Ruby script which converts s-expressions to Graphviz files. Here’s the s-expression I used to create the example tree:

("No political ads on Twitter"
    ("social status, favors, friends, pull"
        ("money shouldn't buy influence"
            "no info that could change my mind")
            "no reasons"
                "debates are irrational, aren't you a Popperian?")
                ("[implied] there is no point"
                    ("purpose of contradicting me?"
                        "opinions are allowed here")))))
    "Less upward mobility"
    "Can't put money where mouth is"
    "Read Atlas Shrugged")

It’s worth learning to write trees as s-expressions. s-expressions are a general purpose intellectual tool. They’re a way of representing structured information/data.


See the Discussion Trees blog category for more tree examples.

See Mind Map software review for software choices.

Elliot Temple | Permalink | Messages (44)

Tracking Discussions

Tips for tracking discussions well:

  1. Write down a tree diagram (or, equivalently, a bullet point outline with nesting).
  2. Whenever you write stuff and get a reply, note down anything you’d written which the reply didn’t address. Also note down stuff the other guy said which you didn’t answer. With this method, the open issues are the things on your list plus the stuff in the latest post. (This is simplest in a two person discussion where you take turns writing one message at a time.)
  3. Get better at remembering stuff in discussions.

More on (1) and (3) below.

Trees and Outlines

Here’s an explanation of discussion tree diagrams with an example. And here’s another explanation below (actually written first, even though posted second):

Here’s an example tree diagram:

You can create tree diagrams with pen and paper or with various software options (some are mentioned in my other post on discussion trees).

Trees like this are always equivalent to outlines with nesting. Nesting X under Y in an outline is the same as drawing a line from X to Y in a tree (with Y below or to the right of X, depending on whether it’s a top-to-bottom or left-to-right tree). You can do both trees and outlines to get comfortable with how they’re the same. Both represent parent/child relationships (that’s standard terminology) where some things are attached underneath others. For discussion trees, replies are the children which you put under the thing they reply to. The “parent comment”, like on Reddit, is the thing being replied to.

Example outline which is equivalent to the tree:

  • Family Thanksgiving
    • Plan Meals
      • Pintrest
      • Web Search
      • Old Favorites
        • Mashed Potatoes
        • Stove Top brand stuffing
        • Cranberry sauce
      • Traditions
        • Deep Fried Turkey
    • Go Shopping
      • Food Shopping
        • Turkey
        • Ham
      • Other Shopping
        • Table settings
        • Chairs

To outline well, you need to be able to write short summaries. E.g. take a three paragraph argument and condense it to one sentence for your outline. This is a skill you can practice by itself.

Remembering Stuff

With practice you can remember more stuff without writing it down. This isn’t automatic. It’s something you can work on or not. It helps to try to remember stuff, and to reread the conversation to look up stuff you did not remember. And it helps to consider it important when someone refers to something you’d forgotten, and go reread it and take note of your memory error (try to find patterns and causes for your memory errors).

A related thing to practice is remembering what you say or read in general. You can quiz yourself on this. After reading something, try to write down what it said without looking at it. Start with shorter stuff (or break longer things into parts, like reading one paragraph at a time). If you get good at this and find it easy, do it with longer stuff and/or do it after a delay (can you remember it 5 minutes later without rereading? 20min? 3 hours? 3 days? 3 weeks?). And do it with your own stuff too. After you write something, try to write the same thing again later. See how accurate you can be for longer stuff and after longer wait times. You can do this with spoken words that you hear or speak, but you won’t be able to check your accuracy unless they were recorded.

People often don’t clearly know what they just read, or can’t keep it in their head long enough to write a reply (e.g. if you spend 30min writing a reply, you need to either remember the text you’re replying to that long or reread it at least once to refresh your memory). People often partially forget, partially remember, and don’t realize the accuracy loss happened (and don’t realize they should selectively reread key parts to double check that they remembered those accurately).

It’s also good if you can clearly remember what you said 1-3 days ago, which someone just replied to. You’ll often get replies the next day after you write something. And to the extent you don’t remember, it’s important to realize you don’t remember, recognize you don’t know, and reread. It’s also good if you can remember details from earlier in the conversation, which could be a week or more ago – and if you don’t, you better review relevant parts of the conversation back to the beginning if you want to write high quality comments which build on prior discussion text.

It’s easier to remember, especially for older material, if you have notes. If you keep an outline, tree and/or notes on what was said (including copy/pasting key quotes to your notes file), it’s easier to remember. If you do that for a while, it’ll be easier to remember without the notes. The notes are partly like training wheels that help you learn to remember stuff (it helps you break the remembering down into parts – instead of remembering everything, you partly read your notes and partly remember stuff that isn’t in your notes, so this way you have less to remember, so it’s easier, which makes good practice because you’re working on part of the skill instead of the whole skill at once).

However, notes and outlines aren’t just like training wheels, they are also good things which you shouldn’t expect to ever entirely stop using. They’re useful for practice but also just useful. With practice, you may learn to use them less but still use them. Or you might use them more with practice as you get better at creating and using them. Remembering everything in your head, instead of using tools, is not necessarily a good thing. Remembering some stuff is useful but there is some stuff you shouldn’t be trying to remember. Remembering basically means temporarily memorizing. The anti-memorization ideas you already know about have some relevance.

Also, notes, trees and outlines are useful for communicating with others. You can use them in the discussion. If the other person gets lost and confused, or there is a disagreement about what happened in the discussion, you can share your outlines/trees/notes to communicate your view of what happened. This can remind the person and help them, or it can be compared with their outlines/trees/notes to figure out specifically where you differ (find somewhere your outline is different than theirs, go reread the original text, find and fix someone’s error).

Sharing discussion trees/outlines is a good way to help figure out what’s going on in difficult discussions that become chaotic. Most people don’t have the tree in their head, didn’t try to keep notes, and also can’t (don’t know how to) go back and create the tree for the current discussion. Sadly, people also commonly don’t want to review a discussion and create a tree. That’s because it’s work and people are lazy and/or think discussion should be much easier than it is. People have incorrect expectations about what it takes to discuss well, so if it’s not working with ease they blame the other person or they blame bad luck and incompatibility, but they don’t usually seem to think the thing to do is increase their skill and put in more effort.

Many people avoid resuming conversations after the first day – they want to talk a bunch at once (e.g. talk for an hour) and then never continue later. This is a really common way trying to discuss issues with people sucks and fails. It’s hard to get anywhere with people like this. A major cause of this problem is their bad memory skill. They don’t want to continue the discussion the next day because they forgot most of what was said. To be good at truth seeking, you need to be able to discuss things over time, which requires both memory and willingness to review some stuff sometimes.

More Complicated Discussions

This section is some more advanced and optional material.

A discussion tree can actually be a directed acyclic graph (DAG), not a tree, because one argument can reply to 2+ parents. In that case, a bullet point style outline won’t represent it. However, you usually can make a good, useful discussion tree without doing that.

Directed means the connections between nodes go in a particular direction (parent and child) instead of being symmetric connections. Nodes are places on the graph that can be connected, they are parents or children – specifically they are discussion statements. E.g. “Go Shopping” and “Cranberry Sauce” are nodes. Acyclic means the graph isn’t allowed to go in circles. You can’t have node A be a child of B which is a child of C which is a child of A.

A DAG can always be put in a topological ordering (linear order, 1-dimensional order, similar to an outline or list) which could maybe be useful. Cycles ruin that ordering but aren’t allowed because no statement in a discussion can be a child of a statement that was made at a later time. A child of node N is a reply to N. Because statements don’t reply into the future (and we can treat all statements as being added one at a time in some order), cycles are avoided.

Statements do reply into the future in a sense. Sometimes we preemptively address arguments. One way to handle this is to add a new argument, C, “A already addressed B preemptively”, as a child of B. This gets into the “last word” problem. Even if you preemptively address stuff, people just ignore you or make tiny changes to try to make a new comment required. The big picture way to deal with this is by criticizing their methodology – they are creating a pattern of errors which need to be addressed as a pattern instead of individually.

Elliot Temple | Permalink | Messages (6)

Mind Map Software Review

I wanted to find Mind Mapping software for the primary purpose of making tree diagrams for discussions. They're also good for diagramming sentence grammar. I often prefer to write a bullet point outline in markdown then have software convert it to a tree. I generally prefer simple, readable output without customizing individual nodes. There are many options, most bad. I looked at 25.


mindnode: solid UI, import, export. imports markdown with italics. no svg export. has mac and ios versions. curi’s choice

omnigraffle+omnioutliner: have to import and export through outliner. has svg export. many features and plugins. some hassle to get fresh imports usable. mac and ios.

iThoughtsX: import/export looks fine, no svg export, iffy UI, a review says it has some good power user features. has weird extra features like some calendar related stuff. mac, windows and ios versions.

xmind zen: limited customization, good themes and structures global options, ok import, no svg export. mac, windows, linux, ios, android.

graphviz: command line tool. many features. important tool that lots of people use. I would need to write a script to convert from markdown to dot including adding linebreaks cuz there’s no built in word wrap. already have an s-expression to dot script that doesn’t add linebreaks but works for grammar charts with one word per node. editing dot files sucks if you want to customize appearance of individual nodes.

jsSyntaxTree is an s-expression based web app suitable for small diagrams with single word nodes.

markmap converts markdown to a mind map. there's a plugin for using it with the atom text editor. but it has little configuration and doesn't do word wrapping. the results are basically unusuable if you put a paragraph of text in a node. i'm still glad to know it exists. it might be useful sometimes for personally looking at the outline of a document i'm writing.


GitMind: web. decent UI considering it’s a web app. img, pdf, txt, svg exports. import via paste from markdown list. but no wordwrap. nodes are all on one long line. RIP.

mindjet mindmanager: heavy advertising. UI looked bad in screenshots, wanted personal info including phone number for free trial, the web form had horrible formatting, didn’t try it

lucid chart: heavy advertising. web app. unclear if it can import markdown or tabbed text. trying to import from mindmaps was a premium feature. has pdf and svg export.

simplemind: bad export

Ayoa (bought iMindMap): no import, pdf export only, mac desktop app is a blatant port from web app with no file menu.

mindmeister: web app, iffy UI, no svg export

bubbl.us: web app, don’t see any import feature, no svg or pdf export

freeplane (was freemind): awful UI even for a java app, a million export options but crashed trying to export to svg.

Scapple: doesn’t import

mindmup: web app, publish online feature is auto-deleted after 6 months (not a permalink) and also you can’t delete it yourself. need gold membership to see what import options are. pasted markdown list in and it made every node a child of the untitled root node.

mindomo: mac app looks like web app port, no svg export, opening a txt or md file just opens it in default editor not in mindomo, wtf, RIP. can import with copy/paste (under the root node, need to manually paste your root node text in separately). bad UI and significant delay on zooming. has some tree structure options.

the brain: no png, svg or pdf export. no print. some sorta cloud upload feature. txt import says it had an error and logged the details (don’t know where). bad UI.

Coggle: Web. Imports with copy/paste but doesn’t wordwrap nodes by default. They’ll wordwrap with individual editing. no svg export.

mindmaster: heavy advertising. mac app is an awful port. only 3 weird import options that warn they aren’t 100% compatible. pasting lost all structure, made every node a child of the root node. has a lot of features including svg export.

Canva: art web app. not really for mindmaps.

InfoRapid KnowledgeBase Builder: $12 in mac app store with no free trial (every single other one i tried has a free trial). the name and other marketing look awful.

mapul: web, can’t import markdown data. has svg export. awful web ui.

miro (was: RealTimeBoard): couldn’t import markdown data, confusing UI, seems like a web app port

PDF to SVG Conversion

After reviewing apps and not getting svg export in MindNode, I figured out that pdfs can be converted to svg. Command line pdf2svg and pdftocairo worked but made unselectable text while the Convertio website made selectable text. I didn’t try Inkscape yet for conversion or extraction. ExtractPDF web app said there were no images to extract, so I don't think MindNode is creating an SVG embedded in the PDF. I got a working svg from importing and exporting with Affinity Designer. Affinity and Convertio both lost the hyperlinks though.

Elliot Temple | Permalink | Messages (11)

Discussion Tree: State of Animal Rights Debate

I began organizing the current state of the animal rights debate into a discussion tree diagram. I started with Peter Singer because he's a well known intellectual with pro animal rights writing. I will update the diagram or create additional diagrams if some pro animal rights people point me to literature which addresses my unanswered arguments and questions, or make important arguments in the comments below. I hope they'll do that. I prefer pointers to specific parts of literature unless someone wants to first concede that key arguments for animal rights haven't been written down anywhere (and explain why they haven't been).

The diagram is just an outline. For details about a particular part, ask in comments below. The diagram is meant to show (a piece of) the structure of the debate/discussion. It selectively focuses on points Singer raised and points I consider important. I'm sure other people have written relevant things, but I don't know where to find that, I've done some Bing searches unsuccessfully, and I have other research priorities (such as how to have a rational discussion – this is an experiment for that purpose). My relevant expertise is primarily about epistemology, software and science, not the animal rights literature. I've debated ~25 people on these issues but they typically bring up sources like a YouTube video about how an animal did something that seems intelligent to them.

Click the diagram to expand or view the PDF for selectable text. The source links are clickable in the PDF and are Animal Liberation and Animal Liberation at 30.

Update: I explain more of my position, and do some research, in the comments below, and in Discussion about Animal Rights and Popper

Update 2: I wrote Animal Rights Issues Regarding Software and AGI

Elliot Temple | Permalink | Messages (129)

Elliot Temple | Permalink | Message (1)

Making Idea Trees

Idea Trees are a tool to help think about and organize ideas and discussions. Use them for brainstorming, outlining, project planning, debates and more. This Idea Tree teaches how to make Idea Trees:

Click the image to expand, or view the PDF which allows copy/pasting text.

More Tree Info

Discussion Tree Article

Idea Trees blog category

Discussion Trees with Example has info in the discussion below the post, too.

Tree creation software suggestions: MindNode (Mac, iOS), XMind (Windows, Mac, iOS, Android, Linux), or iThoughts (Windows, Mac, iOS). (If you can't pay, get XMind.)

Elliot Temple | Permalink | Messages (7)

Elliot Temple | Permalink | Message (1)

Tree: State of the Austrian Economics Debate

This tree documents the state of the debate for Austrian Economics. Click the image to expand. The PDF has clickable links to sources (everything underlined) and selectable text.

The goal of the tree is not perfection, nor to comprehensively document every argument anyone ever made. It’s to cover important issues (as I see them) in an organized way and thereby enable someone to learn from me and/or critically engage with my position.

Elliot Temple | Permalink | Messages (0)

Tree: State of the Critical Rationalism Debate

This tree documents the state of the debate for Critical Rationalism. Click the image to expand. The PDF has clickable links to sources (everything underlined) and selectable text.

The goal of the tree is not perfection, nor to comprehensively document every argument anyone ever made. It’s to cover important issues (as I see them) in an organized way and thereby enable someone to learn from me and/or critically engage with my position.

Update: Typo: In "I’ve discussed with my Critical Rationalists.", the "my" should read "many".

Elliot Temple | Permalink | Messages (0)

Tree: State of the Objectivism Debate

This tree documents the state of the debate for Objectivism. Click the image to expand. The PDF has clickable links to sources (everything underlined) and selectable text.

The goal of the tree is not perfection, nor to comprehensively document every argument anyone ever made. It’s to cover important issues (as I see them) in an organized way and thereby enable someone to learn from me and/or critically engage with my position.

Elliot Temple | Permalink | Messages (0)