Now that we’re familiar with how to use GTD for planning our day, I’d like to turn your attention to supporting project information. What I mean by this is the reference material that you use to complete each project.
To give an analogy, if GTD was something like Rally or JIRA, then your supporting materials are like the wiki you link out to. You can embed all the information in JIRA (or your GTD tool), but anything detailed won’t really fit. And if you want the reference material to outlive the workflow itself, then you need to store it separately. How many times at work has a story been completed, but it’s still useful to have the reference material for some other use?
For this reason, I set up my GTD systems to use supporting documentation via my file system. Sometimes it’s as simple as text files that have meeting notes and the like. More often than not though, I use mind-maps. Software development and personal projects are a complex beast, so I need the right tool for the job.
What Are Mind Maps
Just to make sure we’re all on the same page here, I’ll describe what a mind map is. It’s a diagram with the primary idea in the middle, with secondary ideas radiating out from that in a hierarchy.
You have undoubtedly used one at some point, whether at school, work or university, to organise your thoughts. I’ll give a quote from the great Tony Buzzan, who is sadly no longer with us:
Tony Buzzan was instrumental (in the UK at least) in getting the idea of Mind Maps into the mainstream, and his books on the subject are very accessible. The ability to have hierarchical information is vital for us developers, which I’ll cover next.
Why I Use Mind Maps
A lot of the time when I speak to people about using Mind Maps they might chuckle and just ask ‘ what’s wrong with a list?’. I answer ‘Well there’s nothing wrong with using a hand screwdriver, but if I was a builder I’d invest in power tools’.
Since we’re knowledge workers, why not make the investment in tools for our work? Incidentally, I use Freemind as my mind map software of choice. It doesn’t cost anything (guessing the clue’s in the name) and it is better than any paid software I’ve tried. Because it’s written in Java it will run on anything. Also, as it’s a desktop app you won’t lose your flow when the wifi cuts out.
I’ll lay out some advantages of using them next, along with some common ‘use cases’.
They’re Searchable
The first advantage of a digital system is that it's searchable. Freemind in particular is just a set of text files at the end of the day, so anything you can grep, you can find. When I have to do some troubleshooting, I make notes in my mind map. Guess what? That one word I can remember from 6 months ago is enough to find the solution to a problem I’ve had before.
They Reflect How Your Brain Works
In “The Ultimate Book of Mind-Maps”, Tony Buzzan explains how each brain cell functions as a mini-mind map. To summarise his explanation :
- The nerve impulse fires hundreds of thousands of the spheres called vesicles across something called the synaptic gap.
- These vesicles journey at lightning speed across the synaptic gap and attach, like millions of messenger pigeons, to the surface of the dendritic spine.
- The messages are then transmitted along the branches of the receiving brain cell to its own axon, which then transmits the message through its branches to other brain cells, and so on and on and on, creating the intricate pathway of a thought.
- These pathways are maps, the internal, physical Mind Maps of your thought. The Mind Maps you make on paper reflect these Mind Maps in your head.
If you have ever used a mind map and got into a flow of thoughts, and linked rapidly to other thoughts, you’ll know what I mean. Seeing ideas in front of you begets new ideas, and rapidly.
You Can Just Throw Ideas in, Sort It Later
I guarantee that most developers have had points in time where they have been in meetings and felt bombarded. You come away from a meeting with some parts that flow, some terms you don’t understand and a lot of gaps. You can’t always slow the meeting down to get clarification, as much as you would like to.
But with mind maps, you can reflect afterward. Take the different terms you didn't understand in the meeting and lay them as separate points in your mind map. A lot of the time, the answers present themselves when you can see questions next to related pieces of information. Worst case though, by having thoughts out in front of you, you'll have a ready made list of things you need to qualify.
They’re a Powerful Tool for Ideas
I can’t put it any better than David Allen from Getting Things Done when he talks about mind-mapping, so I’ll quote him:
“The great thing about external brainstorming is that in addition to capturing your original ideas, it can help generate many new ones that might not have occurred to you if you didn’t have a mechanism to hold your thoughts and continually reflect them back to you.”
Just committing the ideas to paper, frees you up for more of them. I can speak first hand of experiencing this, one idea flows to the next as soon as it's written down (or entered digitally). Put an idea down, your brain registers that as ‘offloaded’ and starts working instead on connections between that and the other ideas you’ve put down.
They’re a Powerful Tool for Learning
I was fortunate enough to see learning guru Aino Corry at the 2015 “Yow!” conference. In her seminar on how we learn, she spoke about our brain having four working areas. When we are trying to learn information, these four areas are fiercely working to understand these concepts.
You can only hold so much processing of ideas in this working memory at once. If you start putting things on paper (or in a digital mind map) you can free yourself up though, a little like having extra registers for the CPU.
The use of these four working areas is to eventually build what is known as a chunk, a piece of expertise that you can recall. I try to build these chunks by starting out with a theory, then committing any questions about it to the mind map. As I find out the answers, I translate the questions back into the missing steps to prove or disprove my theory.
Since the developers are life-long learners, I think this is a powerful technique to help us along.
How I Integrate Mind Maps into My Projects
Hopefully I have convinced you of the advantages of using a mind map. Next I’ll talk about when I use them. The most obvious time is when I start a new piece of multi-step work, in other words a new GTD project.
When I start a new project, I spin up a mind map along side it. I ‘link out to this’ from my new GTD project so that I am completely consistent. If a project needs reference, I go to the associated mind map.
In terms of setting up the mind map I follow Tony Buzzans guidelines for colours and terms. Each secondary idea from the primary idea is a thick line, each with a different colour. Each second idea itself is a single word, all caps, and in bold. I found this to hold my focus, as he indicated it would.
How I use the Mind Maps for a new GTD project is down to what I’m struggling to do. If I haven’t even worked out what steps my project has, a mind map usually kickstarts the process. The pieces that I do know are just put down as secondary ideas on the map. Before I know it my brain is knitting their relationships together. As the actions present themselves, I can move those back into OmniFocus and tidy up my mind map.
I also have some bash scripts that create me another mind map once a fortnight, at the start of each agile Sprint. This mind map just gives me a high level view of everything I’ve got on the go. This isn’t for any workflow tool but more as a brain dump of my current ‘landscape’ at work.
Mind Maps can be as coarse as a whole project or as granular as a single piece of work. Something as small as a single pull request. It’s really a case of ‘if I’m struggling for clarity’ try and get it out on a map and watch yourself get into a state of flow.
Conclusion
Mind Maps are a really powerful tool for any time you need clarity, be that for formulating ideas, understanding a new project, or the upskilling we have to do as developers. If you can deploy Mind Maps at the right time, there is a serious boost to your flow and to your comprehension. In the next lesson we’ll discuss deployment in a bit more detail, how to put all the parts together to maximise your ‘bang for buck’.