Mark Needham

Thoughts on Software Development

Learning: Writing about simple things

with 4 comments

My colleague Aman King is back in Pune for the time being and during one of our conversations he was asking me why I didn’t wait a bit longer and learn more about Ruby before writing about it.

In a way he is right and I didn’t write anything at all about C# or Java when I was first learning how to write code in those languages because I didn’t have the confidence to write about something that I knew nothing about.

However, what I found when I was initially learning F# was that even writing about very basic things was quite useful to me and once I’d written about something my understanding of it tended to increase.

For example about a year and a half ago I wrote a post about some common things that I’d been getting confused with and I was quite surprised to notice that I never confused them again once I’d written that post.

I’m not sure of the science which explains why that happens but I’ve noticed a similar thing happening with Ruby.

I wrote about the advantages of learning through teaching last year which is along similar lines and I think the points I made there are applicable even if the subject matter would be trivial for others.

The other useful side effect which sometimes happens is that someone much better than me will point out a better way of doing something than what I described and I can then use their approach in code I write in the future.

In a somewhat related article titled ‘Blogging, empowerment, and the “adjacent possible”‘ Scott Rosenberg recently described in more depth how writing about things can actually change the way we think about them.

Be Sociable, Share!

Written by Mark Needham

October 20th, 2010 at 8:51 pm

Posted in Learning

Tagged with

  • I actually agree with what you’ve pointed out. Although I did not blog a lot when I was picking up Ruby, I did find that reading blog posts of others who were learning Ruby too was more helpful than reading an advanced Rubyist’s blog posts. The former would write about concepts that were simple and would frame sentences in a way that would be understandable to those not used to Ruby idioms, while the latter would typically write about advanced topics and in a manner that assumed familiarity with Ruby already.

    I’ve written a little bit about my learning experience here: http://www.wikyblog.com/AmanKing/Learning_Ruby_and_Rails

  • I have come to realise the same thing – writing/talking about something you don’t necessarily understand so well is a great way to learn more about it.

    I blogged my two cents here: http://www.invalidcast.com/post/Listen-To-Yourself.aspx

  • Hi Mark,

    Great post! Check out this article: http://www.computer.org/cms/Computer.org/ComputingNow/homepage/mostread/MostRead-SW-PairProgrammingReallyWorks.pdf

    Writing about and voicing out are efficient learning mechanisms. The dynamics of knowledge sharing that these actions trigger are the cherry at the top.

  • @Aman – interesting observations. I think it’ll also be interesting for me to look back on the way I write about Ruby as I get to know it a bit better.

    There’s certainly a contrast in the way I write about things now compared to a couple of years ago so I imagine there’ll be a similar progression.

    @Martin – nice post, thanks for linking.