I liked John's statement which btw explains pretty much why to have a technical blog like this one here.
[...]Write. Blog about what you've done and how well it's worked. This goes beyond looking carefully - just working out how to express your successes and failures will make them clearer in your own mind. Be warned: writing can be addictive and time-consuming.[...]Actually this is a pretty good known concept: learn by reflecting about it (remember retrospectives in agile development ;) ). And that's what you do when you explain things to others (like when you blog about a topic). For doing so you really have to have a deep understanding, unless you're just pointing out things of course.