DEV Community

Cover image for An Answer a Day on StackOverflow
Touch Marine
Touch Marine

Posted on

An Answer a Day on StackOverflow

I am a longtime StackOverflow lurker. Regularly checking it for an answer to today's problem. But despite being a regular at the StackOverflow's bar of questions and answers, I never bothered to participate. Always having a drink without paying. Until now, that is.

A month ago I finally, after many years, signed up to StackOverflow. And I gave myself a challenge. Answer a question a day for 30 days straight. And I did.

Every day I searched StackOverflow looking for questions to which I could answer. A few of the days I found such questions rather quickly. But, most of the time, I struggled. I struggled to find questions to which my answer would prove useful.

There is an endless stream of questions on StackOverflow. However, most of them are answered or flagged in half an hour. I feared that my challenge might be harder than I thought. Damn those pesky programmers always helping out!

My initial strategy was to answer as quickly as possible. To beat the other answerers. But that resulted in somewhat forced, quick answers. This was neither helpful nor fulfilling.

I improved my strategy by constantly updating my Watched Tags and Ignored Tags. Now I was being shown only questions completely specific to my domain. At last, I could find questions to which I could provide a helpful, meaningful answer.

But it was not all smooth sailing from thereon. There were a few hiccups. I experienced some of the common problems pestering StackOverflow, such as, Fastest Gun in the West Problem, many duplicate questions, and discouraging negative ratings.

One of my answers was downvoted without any explanation. How could someone not appreciate my clear and excellent answer? Joking aside, that was pretty demotivating. Nevertheless, I stopped sulking after a few days and let it go.

Despite the problems, I completed my challenge. In 30 days I posted 32 answers. Some for the sake of answering, some even wrong at first, and some helpful, I hope. I even answered a Crystal language question, even though I have never used Crystal.

In pursuit of reputation points and completing my challenge, I provided some lacking answers. The Fastest Gun in the West kind of answer I mentioned before, contributing to the problem. I know better now.

Now that I am done with the challenge, I intend to answer only questions that are interesting to me and to which I can provide a definitive and well-researched answer.

Top comments (6)

_garybell profile image
Gary Bell

I can't remember the last time I answered on StackOverflow, but it is hard to get a solid answer quickly unless you really know the topic well (or it's a slightly obscure topic).
That being said, I still get points for questions I answered years ago. They just tick up my reputation from time to time. Well done on helping out.

If you've found a lot of the same questions being asked over and over, you've got to sit back and ask "why?" It's usually either because the documentation is lacking, or because people are too lazy to search.

If it's the former of those, then there's two good options to work with:

  1. Update the documentation (if it accepts community contributions)
  2. Write a blog post covering the issue in a bit more depth

Either one of those options is good for building your knowledge and helping others.

touch_marine profile image
Touch Marine

Just yesterday I encountered a question (What is the difference between 'typedef' and 'using' in C++11?) that was asked 8 years ago with an accepted answer from 5 months ago. So definitely, points and answers are being given even after long periods of time. And very often it takes some time to get a solid answer.

I think that lacking documentation is rarely the reason for duplicate questions. The way I see it, most of these askers either do not know how to find the solution or just do not bother. As you mentioned, some are just too lazy to search. But I think there are some that are so new to the topic they do not even know what to search for. Because of those who are too lazy to search, the answerers often get frustrated with the number of duplicates. And because they are frustrated, they sometimes downvote or leave rude comments to newcomers as they think they are too just too lazy to search.

I believe this is a problem thanks to vastly varying levels of knowledge on StackOverflow. And it is a hard problem to solve as you cannot just stifle one group, whether that be newcomers or more experienced users.

Although I do not think lacking documentation is a primary reason for duplicate questions, there is a lot of lacking documentation out there. And it causes unnecessary issues. I will try to contribute to that in the future. For quite some time I have been wanting to contribute to open-source and this may be a good way to do it.

_garybell profile image
Gary Bell

I have to admit, I do like finding things with poor documentation. Mainly because I have to figure stuff out, and then I can write a blog post about it. My best blog post is one I wrote a year ago (published a year ago tomorrow), and it only exists because documentation was lacking. I use it whenever I need to remind myself how that bit of code works, because I know it's right.

But with StackOverflow, yes, there's a lot of very experienced people on there who forget that they too needed to learn, and that not everyone knows what to search for. Though I understand why they down-vote for things with a near exact title match.

afsharm profile image
Afshar Mohebi

Strategies and deep knowledge aside, I feel StackOverflow needs a feel of lucky. Both in finding good questions to answer and in the question itself. Sometime you spend 30 minutes to answer a question by researching and coding. But, sometime you throw a single instance answer to a simple and short question and earn a lot of reputation.

anduser96 profile image
Andrei Gatej

Thanks for sharing and keep up the good work!

I’ve learned a lot from answering questions and I’m very glad that I kept on doing it.
One of my best experiences was when I explored the source code of a library that I use a lot(rxjs) and then answered many questions related to it. It’s incredible how much you can learn with this approach.

touch_marine profile image
Touch Marine

Exactly. I find that it also helps me keep up with languages that I worked with but am not currently using.