Stack Overflow can Make You a Better Learner, Too

Posted Sunday, February 06, 2011

Jeff Atwood recently posted on his blog, Coding Horror, about how asking and answering questions on Stack Overflow, the community-driven programmer question and answer site, can make you a better writer. It’s a good read with a good point, and I completely agree. However, over the past few weeks, as I’ve tried to be more engaged with Stack Overflow by finding questions that I can answer, I’ve learned something else: Stack Overflow can make you a better learner.

I usually only utilize Stack Overflow for asking questions when I feel I’ve hit a dead-end with Google–when I feel I’ve exhausted my other options and I just can’t find an answer to the problem I’m having. In that way alone, I feel Stack Overflow has changed the way I look for answers to a problem. I tend to search for longer and in more ways before posting to Stack Overflow.

Recently, though, I’ve been learning a lot from answering questions. That sounds counter-intuitive, I know. How can you answer a question unless you already know the answer? And the answer, of course, is that you find it. That is where I feel Stack Overflow has helped me the most. By finding questions (usually related to topics I’m interested in) that I don’t know the answer to and finding the answer, I’ve learned new ways of finding answers. In particular, I’m much less intimidated than I used to be about reading source code written by other people, which is an excellent way to learn about software.

The other way I feel Stack Overflow has changed the way I think is by exposing me to problems I wouldn’t necessarily come up against in my own day-to-day coding. People have a lot of potentially weird problems on Stack Overflow, and reading them and trying to come up with an answer expands my capabilities in ways that I otherwise would never have happened upon.

So even if the users with thousands of rep and super-detailed answers intimidate you a little, I recommend taking some time each day and trying to answer some questions for people on Stack Overflow. Who knows what you’ll learn?