As a team lead, I’m heavily involved in the interview process, a process that I’ve written about on several occasions. During interviews I end up asking all the candidates the same question: What online resources do you use to learn about programming? I’ve heard the words ‘MSDN’ out of more C# developers than I care to admit. It’s gotten to the point that I’ve had to change the question, Besides MSDN, what online resources do you use to learn about programming?
In theory, a programmer that only checks MSDN is at least as likely to be as good as a programmer that checks other resources as well; so the results shouldn’t really matter. But in practice? That’s a whole ‘nother story.
Programmers that only check MSDN or ExpertsExchange don’t normally fare as well in my interviews. Maybe it’s because the information in MSDN isn’t backed by Real World Problems, maybe not. Whatever the reason, there’s a noticable and measurable difference between the programmers that cite Stack Overflow, and those that don’t.
The difference is so stark that I can even graph it for you:
I have a few theories as to why this is:
- Browsing Stack Overflow for any length of time means you will learn something knew that actually happens in a Real World scenario.
- You’ll learn something from someone who works on the language or someone who’s written books on the subject.
- The answers you read are vetted by the community as a whole, and you can immediately what not to do.
On MSDN, or on Google, you don’t get that. You just get what you asked for, it’s up to you to determine whether or not it’s a good idea. Because of that, you have endless questions on how you’d parse HTML with a Regex.
Bottom line: If you’re an interviewer, ask that question and see the answer for yourself. If you’re a programmer, then it behooves you to be active on Stack Overflow.