Getting useful feedback from Reddit?
Tags: reddit, feedback, review
Published: 2019-10-21 02:43:36

A few days ago I read a great post [here](https://dev.to/nazanin1369/how-to-give-effective-feedback-33kh) about providing feedback. But receiving feedback is a skill equally as important. This is especially true for communities where the tone seems to be rougher from the get-go like the various Reddit subs targeting the developer community.

While these subs are great to find quick responses, the answers are often distorted by factors that shouldn't be considered.

## Fandom and Reputation

The karma system has various problematic aspects, but certainly the worst one is the perception that people posting and commenting often seem to have a reputation and therefore valid things to say.
Of course, these things are rather unrelated (not to say that some things can be assumed about people whose daily Reddit output seems to leave little time for actual development). Anyway, I have made extraordinary experiences where people have reminded me to "respect my seniors" when I questioned feedback. And that seniority seemed to have been established not by shared code or achievement in the economy, not by recognition by reputable developers, founders or businesses, no, by years of Reddit membership. But what does that say? 

On the other hand, I must take into consideration that my ability to accept feedback might just be insufficient in itself. So what if I cannot say anything about the experience of an individual, does that mean they don't know what they are talking about? After all, most of my code isn't public either and just because someone doesn't have a GitHub account doesn't mean they aren't good developers, right?

## Evaluating feedback

So the next problem is to identify which feedback or answers are valuable and which ones aren't. So I categorized posts into two different types: direct questions and feedback request. I created 5 accounts with different personas and experiences. After five months of data collection and manual evaluation, there were several discoveries I made:

## Answers depend on who you are

While I didn't even plan to look into that aspect, I noticed something that shouldn't ever happen: depending on how experienced you sound and claim to be, the answer to the same question as well as the same code **highly** differ. You read that right: if people think you are knowledgeable, they will answer with respect and give the content true consideration. If you express yourself in a way that seems to be coming from an inexperienced developer, the very same code gets vocally destroyed.

## Noobs and egos

The next interesting finding is the echo chamber one can easily create or become a victim of. When certain assessments have been made about a certain stack, software, tool, language (God am I tiered of people hating on PHP without ever understanding it or any other language deep enough to compare it), pattern, library, or opinion, people will regard these outcomes as gospel. This leads to ridiculous situations where individuals being half through their first web development online bootcamp with background in PowerPoint (I might exaggerate, but you get the point) would scold you for suggesting technology x in a particular scenario in a manner that let's the reader assume they not only know what they are talking about, but in a tone that seems to emphasize on having to convey how full of themselves they are. Unfortunately, the reader is normally a learner looking for help with a high likeability of misinterpreting such ego as certainly being a knowledgeable comment. Little do they know that the poster has been asking this very question the week before and was in turn fooled by his or her predecessor from another week before. It's an endless circle and noone knows where certain opinions came from. But again: you can change them. You can write an article on Medium and publish it to Reddit. Then have your various accounts praise it and boom - you created a new echo chamber. And no, that article does not have to provide solid reasoning, code, examples or peer review. It just needs to be coherent (you can't write complete BS, of course) and use language indicating deep knowledge of the subject. However, you need to have fast positive feedback, otherwise actual developers who see through it dominate assessment and once they are the first negative comments with enough upvotes you have lost the game. Which leads me to

## Never swim against the current

Now this one is very powerful and actually led me to write this article over half a year before I am ready to reveal the identities and accounts I use for this experiment. Imagine the following scenario:

You request feedback on a particular project. The first comment you get is from someone with high reputation within the sub and it completely demolishes the project while warning all readers about it. Citing security flaws of the highest order. 
Then it's over. Your post will be downvoted to hell and a shitstorm will break loose. But what if it's not true? What if that feedback is simply wrong as the commenter made a mistake and for instance looked at the wrong repo? ( And I wish that would have at least once been a reasonable assumption rather than noticing that people simply don't look at code at all before judging it)

Do you think someone notices and corrects it? No.
Do you think you could clarify and people would listen? No.
As a matter of fact, if you do, others will come in and remind you of rule #1: respect your seniors, the infallible superusers with "years of experience".

## So how do you get constructive feedback?

Again, I have divided feedback in two categories. One of them is review requests and the other one direct questions. The simple conclusion is: whenever you start a post with "Can I...", "How do I..." and similar, you have a high chance of getting valuable answers. As for reviews: Unless you are asking for feedback on design, layout or concept, Reddit is simply not the place for you. While good feedback on code does happen, it happens too seldom and is not worth the effort of filtering out unworthy feedback which unfortunately additionally requires experience on a level where you don't need Redditors anymore anyway.

## Conclusion

I will provide a more scientific evaluation once this experiment is over. For the reader looking for solutions: find discords, meetups, people on GitHub and use code review on stackexchange.