Learning by teaching
It’s been over 3 years now that I have been out of college and have done any intense studying. And by intense studying I mean studying a subject to a point that I intimately understand it and could teach it. As a software developer I am constantly reading development blogs and magazines and learning new ideas and techniques, but I rarely study a new feature or enhancement to the point that I understand it. I more so study to the point that I know how to use the new feature but I don’t understand the inner workings of the feature. Take for example dynamic objects in the .Net framework 4.0. I’ve read a couple blog articles and listened to a recorded talk from PDC and now know how to implement a basic dynamic classes. I know that the new DLR allows for the use of dynamic objects but other than that I don’t know much more about dynamic objects. How much slower are they than static objects? How do you cache methods in dynamic classes?
I am seeing things from a birds eye view but I want to start seeing things up close and truly understand subjects I am studying. It’s often been said that the best way to learn something is to teach it. And one way to teach is to write blog posts, so I am going to write blog posts on the subjects that I am currently studying to help me more fully understand.
So what subject am I going to start studying? Software design principles. It’s something not taught in school and yet is what separates the good coders from the bad.
Here’s to studying to learn…