scribble

The Flying Developer

Home About Me Twitter GitHub Contact

19 May 2012
Why I Contribute to Stack Overflow

Recently I’ve been getting into Stack Overflow, after dabbling with it once or twice over the last couple of years.

Now, I’ve been using SO almost constantly since it started. It’s probably the best general resource for answering programming questions on the internet. What I haven’t really been doing until recently is contributing.

Why contribute? Well first off, I have legitimate answers to some of the questions on there. Helping other people out with understanding their code is lots of fun. But there’s more to it than that.

Answering questions on SO helps my code review skills. There’s a big gap between knowing the answer to a question and clearly explaining it, especially without speaking about it in person. It’s really hard to leave a good answer without going over 10 lines.

I wasn’t initially expecting this, but I also get my code reviewed. People will comment on my answers to suggest optimizations, point out mistakes, or just agree with my solution. All of these help me to write better code.

It also helps me learn. Because I want to give good answers, I commonly double-check my solutions before submitting my responses. I spend about as much time in the Rails docs as I do writing text. This reinforces my own skills and often teaches me something new that I didn’t know before.

The last thing I do is pick questions that I don’t know the solution to, and then try to solve them. I’ll create a new Rails project, add the code from the question, and then work through it until the problem is resolved. This is pure learning for me, with the bonus that I can pass my findings onto others.

If you do any kind of coding, I’d recommend contributing to Stack Overflow. Not only will you be helping others, it’ll make you a better programmer.


Thanks for reading! If you like my writing, you may be interested in my book: Healthy Webhook Consumption with Rails

David at 10:00

scribble

Home About Me Twitter GitHub Contact