Studies have shown that the best way to learn a topic is to teach it to someone else. I agree wholeheartedly with this – you don’t really know a topic until you’ve had to put it into your own words and get someone else to understand. Helping out people on the MSDN SQL Forums and the SQLServerCentral forums is a great way of learning. It’s a very ad-hoc method, as there is no guarantee what you’ll be looking at on any particular day. Although I might not know the answer, a well written question will pique my interest, and, as one of my strengths is researching how to do things with SQL Server, I’ll attempt to ferret out the answer. This results in a deeper understanding for me, and (hopefully) a thankful person on the other end.
Although helping completely unknown people on the Internet can be fun, it’s a lot more satisfying when helping in person, either through teaching courses, giving presentations at user groups, or one-on-one mentoring. These require you to know the topic thoroughly up front, as there is much less of an opportunity to dart off to Books Online.
I don’t read too many SQL Server books anymore, with a few notable exceptions, such as the Inside SQL Server series, and the SQL Server MVP Deep Dives. These are highly recommended due to their deep technical nature. The MVP Deep Dives is especially interesting, as it contains a wide range of topics about what MVPs find interesting, as opposed Books Online worded differently. (This is not to bag authors – there’s definitely an audience for well written books – I’m just happy with Books Online!) This is a very similar type of format to podcast interviews. I don’t recall how many different times I’ve heard Paul and Kim go over the same material once more, but it’s always an entertaining listen! With 90 minutes on a train each day, podcasts are quite useful, as long as they’re not dry technical topics. Videocasts are not my thing as I rarely have the opportunity.
I keep up with blogs (thank you, Google Reader!) to see what current ideas are floating around, but it’s necessary to filter them – I don’t have time to read every blog post in detail, although many are deserving of that attention! Instead, I’ll flick over the content to get a feel for the topic, and keep it in mind for later reference. Blogs can be quite handy when searching, but it’s always worth remembering not to just blindly follow advice given. Think through the offered steps and consider whether it makes sense before trying it out on your production system.
I believe in the value of certifications, although only as a supplement to experience. I would love the opportunity to do the SQL Server MCM course as it appears to be an excellent test of all areas of SQL Server, but the wife and kids will insist on spending three weeks in Seattle!
If I had to pick one method of learning that I believe is optimal, I would choose mentoring. It’s always important to have a mentor, even if you’re considered an expert, if only to bounce ideas off. And it’s fantastic to give back by mentoring others.