Mark Needham

Thoughts on Software Development

Archive for the ‘deliberate-discovery’ tag

Deliberate Discovery: The stuff I don’t know list

with 3 comments

Towards the end of Dan North’s post on Deliberate Discovery he makes the following suggestion:

There is much more to say about deliberate discovery. Think about applying the principle to learning a new language, or picking up a new technology, or a new domain. What could you do to identify and reduce your ignorance most rapidly?

This reminded me a lot of what I used to do when I came across things that I didn’t know how to do a few years ago.

I would write down the thing that I didn’t know and then make sure that I looked up the things on my list at the end of the day and then discuss what I’d read/learnt with a colleague the next day.

More recently I’ve fallen into what I’d call a complacent pattern where if I find something that I don’t know 100% how to do I don’t go out of my way to check that I actually know how to do it now.

I have more confidence that I’ll be able to work out how to do something if the need arises but I don’t gain that knowledge right away.

Effectively I’ve continued identifying my ignorance but haven’t taken the steps to reduce it.

Now that I’ve realised I’m doing this I’ve started writing down things that I don’t know on a “Stuff I don’t know list” and I’m back to spending some time each evening to run through the list and at least gain some knowledge on each item.

One problem I used to find when I did this before was that I’d start reading about one thing and then I’d notice something else that I didn’t know, go off and read about that and so on until I’d forgotten what I was originally trying to learn.

To try and combat that I’ve been time-boxing myself with a pomodoro while I’m working through the list and then adding any new concepts I come across to the end of the list.

Another mistake I’ve made/sometimes do make is reading very passively i.e. I read the information but don’t really understand it.

To get around that problem I’ve been talking to colleagues about what I’ve been reading, as suggested by Andy Hunt in Pragmatic Thinking and Learning.

In addition I tend to remember things better if I actually get to use them in practice rather than just learning the theory.

Since the majority of the reading I’ve been doing lately has been around networking I’ve been using tcpdump and wireshark so I can see the theory in action.

Unfortunately those are another two things I don’t know so I’m learning about them as I go.

Written by Mark Needham

January 26th, 2011 at 6:07 pm