Mind-maps for Debugging Your Thoughts and Communication

Update: I’ve switched to Medium from WordPress and divided this post into two separate posts. The first focuses on introducing Mindmaps in the context of CBT and the second explores the other applications of Mindmaps. Please read about this topic there. It is much better formatted and understandable on Medium.
Continuing with the blog theme of “stuff I’ve had to explain to a dozen people”, I’m going to explain in mindmaps in this post. I’ll start off with how I was introduced to mind maps (Cognitive Behaviour Therapy), followed up with a bunch of other applications (debugging programs, life-goal planning, speaker-notes, negotiation {with applications to cognitive science!}) and finally finish off with a review of the software available for mind-mapping. None of these sections are related (and maybe I should divide these into separate blog posts), however the Cognitive Behaviour Therapy section is required if you want to understand the other sections and the Negotiation section is definitely the most interesting. All the mind-maps in this post are made with MindMup (because I left my damn drawing tablet in Sudbury), but pencil and paper work just as well.

Note: WordPress makes it freaking annoying to upload high quality images, so you’re just going to have to zoom your browser to see these images. I know. I’m sorry. I really should have used Jekyll.
Cognitive Behaviour Therapy
When I was younger, I used to have problems with anxiety. When I went to the doctor, she mentioned cognitive behaviour therapy. She essentially described it as debugging your thoughts. Your thoughts are built by beliefs. Actions come from your thoughts. Beliefs are reinforced by your actions.

CBT nutshell

The (simple) example my doctor gave is of someone who is worried about academic performance. They believe they will fail and that they’re rubbish at exams, so they keep think demoralising thoughts. This will distract them from studying or freak them out, so when the exam finally comes you’ll do poorly. This action will reinforce your belief that you are destined to fail academically. So what you have to do is kill the irrational belief that no matter what you do, you will do poorly on an exam. This will break the cycle and free you from your spiralling thoughts.
This may seem bloody obvious to you, but to me it was miraculous (possibly because I didn’t know how to think analytically until I learned how to program in first year engineering). As discussed elsewhere on the internet, the main benefit of Cognitive Behaviour Therapy is working through your emotions while trying to identify the beliefs and rationalise them. Mind-maps are my way of digging down into a practical foundation for dissecting your thoughts.
For example, let’s work through the belief that you’re never any good at big projects and you just got assigned one in this class that you love.
Your automatic thought is going to be you’ll fail, because you always fail.
Well, now you’ve got to come up with some evidence for that belief as dictated by CBT.
And some counter-evidence.
On a good day, your counter-evidence wins automatically and you feel better, but today is a bad day and you’re still anxious about that project. So you’ve failed before. Do you know why? What can you do to prevent failure again?
And if you fail, is it the end of the world?
Alright! We’ve got some perspective, some evidence and some coping strategies. This is a lot better than what we started off with. To embed this in my brain, at the the bottom I usually like to write “conclusions” or “next steps” as a summary of the work done in the map. This way if I find this belief resurfacing, I can just review the conclusions without having to go through each node.
I’ve continued to use this throughout my life and many friends have come back to me saying this technique has resolved very complicated problems for them, ranging from break-ups to existential crises. Please let me know in the comments why it worked or didn’t work for you.
Planning Out Life Goals
For my personal use, I like to review every week in the form of a mind-map where I am and where I’m going.
Stacked-looking nodes have sub-nodes that I’ve hidden. Red nodes means I keep messing up the goal.
If I see one of goals hasn’t had progress in a while, I can start thinking about why. Maybe that goal isn’t as important to me as I thought? Is there some barrier that is stopping me from getting started? Like my previous post about “Unit Testing Stories”, this doesn’t tell you how to go about reaching your goals, it just gives you a base to build on or a better visual on how it’s all working out. There’s a ton of writing out there already about productivity and reaching your goals, especially from my friend Malcolm Ocean. If you want tools on how to be motivated and plan well, go see his blog or follow him on Facebook.
Negotiation and Discussion
I also really like the Internet for various reasons, but discussion on them look like this.
straight_down I also like what a lot of people write on the Internet, but sometimes certain places on the Internet seem to cause toxoplasmas of rage.

I have a hypothesis that a lot of communication breaks down because of a lack of understanding of history (this is where I’m coming from), context (this is what I think we’re both talking about), time (I want to write a comment reply, not a fucking blog post) and audience (I’m replying to you, I’m replying to this whole thread).

At one point, this made me want to write a science fiction story about an alien race that conjugates the certainty of a fact into their verbs.

My other fantastical solution is people sharing mind maps on the Internet.

You could also mark certainty of your nodes, so a person can be aware if you want more information on something.

As a result, it would give context, people could understand the history of where others are coming from, proof of arguments would be a lot easier to see, it would be much easier to distinguish a troll from someone who doesn’t have time to describe all of the nuance in their argument.

Also, it would solve the problem of conflicting collectives. When someone sees the word feminism or Muslim, there is a whole wide spectrum to what they could be imagining. This is a problem, because when people identify with the collective or try to critique it, they can can be identifying/critiquing crazily different things. With mind maps, you could have all the benefits of identifying with a collective (support, self-critique), with the added bonus that if you are offended confused by that collective, you can punch down to the roots to gain understanding.

I’m even so arrogant as to think that this technique could also help with StackOverflow questions! When a noob doesn’t know what the hell they’re doing, we can suggest nodes from our progamming-specific mindmaps for them! And then the noob can understand where I got this knowledge from and how to ask questions about their own nodes!

Interestingly, I’m not the first one to imagine this. The cognitive scientist Paul Thagard has been writing about this for years in the form of cognitive-affective maps, but he mostly analysed one-to-one mappings and discussions rather than addressing the complex audiences of the Internet.
Obviously, my idea of grandiose application to the discourse of the Internet is wrong and according to some people, this is because the architecture of the Internet cannot support such dynamic linking and customisation.
So I’ll guess I’ll have to keep dreaming about the day when the Internet finally becomes what we imagine it to be.
Taking notes in one-shot lectures
I’m a member of the Centre for Theoretical Neuroscience which has a lot of speakers come in and talk about really cool things. I noticed a pattern every time I attended a lecture. I would start off excited and motivated, but eventually end up lost and bored.
I realised that the main problem was the fact that I wasn’t actively participating in trying to understand the material. Additionally, when I was active and I had questions, even if I wrote them down, I forgot what they were in relation to or how much I had understood to that point.
My solution was to make mind maps. They look like this.
I highlight things that confused me in red and keep two branches off of the root node for “Asides” and “Questions”. “Asides” are ideas that sprouted from this talk but probably aren’t related. “Questions” are general and require follow-up with various people.
This mostly scales only to one-shot lectures and not an actual lecture series, because of the quick-overview nature of one-shot lectures.
Once upon a time in undergraduate engineering, one of my aspiring developer friends was trying to get a job with Khan Academy. He was trying to make an interactive way for kids to practice matrix operations. He called me over to help him, describing how the Khan Academy JavaScript library was impossible to understand. I asked why he had to use that library and why not just use basic JavaScript. He did exactly that and finished his work in 30 minutes.
This is a perfect example of tunnel vision, which I consider the hardest part of debugging. You can get stuck in a Google-spiral researching something to death when you should be hacking or you can be banging your head on a wall hacking when you should be searching for more elegant solutions. To balance these is non-trivial, especially since time flows so strangely in both of those troubling states.
An added bonus is the ability to review what you’ve considered to re-evaluate your rationality once a solution has been found or suggested by another person. What assumptions did you make that incorrectly invalidated an option? What heuristic will you use next time? It also give you something to show your boss when they think you’ve just made the stupidest decision ever.
Look boss, I just had some incorrect assumptions! I'm not actually incapable of rational thought!
Look boss, I just had some incorrect assumptions! I’m not actually incapable of rational thought!
My favourite software for mindmapping is MindMup. I’ve tried about a dozen different softwares including FreeMind, FreePlane, bubbl.us and Coggle. Mindmup has just the right features for me (rarely requiring me to use my mouse, works offline, can use cloud storage or local storage), allows me to share mind maps and collaboratively work on them. It’s also free and open-source! It’s so free that the developers won’t even take donations despite the fact that I would give them 100$ at this point.
Bonus: Why can mindmaps be so effective?
Although I have little evidence for this, I think that mindmaps are a way to hack around limited cognitive resources, as well as cognitive biases.
By cognitive resources, I mean your ability to keep a set of options in your head (working memory), as well as a recollection of the other options previously considered and the events leading up to your current decision (serial/episodic memory). Mindmaps are an extension of your mind (foot: which is actually an interesting debate in cognitive science) letting you manipulate your thoughts in feelings in more manageable chunks.
In terms of biases, in Thinking Fast and Slow the idea of “All You See Is All There Is” is discussed. It’s the idea that after a certain point you stop looking for evidence that might disprove your current conclusion. I think mindmaps force you to slow down and question the assumptions you make at each node. This then engages you to do more research, but always remaining in the scope of the original problem so you don’t get side-tracked.
Footnotes (because I have no idea how to insert them into WordPress)
The fact that I could not think analytically until I learned how to program is actually in line with the Mindstorms book.
I got the idea of people having trouble determining the scale of audience being addressed online from Ze Frank.
The way that I stop from getting caught up in banging my head or hacking is by using Pomodoro.

One thought on “Mind-maps for Debugging Your Thoughts and Communication

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s