I'm a junior developer and like the overwhelming majority of new people on that site, I am regularly abused for my dumb questions. I know that less than 5% of first time users ever return or try to contribute but I don't see any other options. I do want to participate in a community like this but not if these people are so condescending and nasty...where can I go?
Don't bother visiting a community if you can't make the effort to adjust to its values and culture -- Stack Overflow doesn't care about answering poor questions with no long-term value (this isn't a debugging forum).
Take some time to elaborate on your question and flesh it out so that other people might benefit from it later.
There are allot of uniformed assumptions being made here...
You don't know the quality of my questions and the degree of my contributions...and you never will. What most people do know is that Stack Overflow is a shit show in decline.
Been there experienced that. I realized that they are stupid, but after a while from their point of view, they don't want redundant questions. But still my questions were closed, but those were narrowly different from existing ones. I used this trick. create additional 3 accounts in SOF (have them in each browser like Firefox, Safari, IE) and you post your questions through your main account in CHrome. And then upvote from 2nd, 3rd and 4th account from all other browsers, to keep the question alive.
You realize _why_ the questions are being closed, and instead of cooperating with the people trying to keep StackOverflow clean, you just go around them. I never understood why StackOverflow would try to find correlations in user votes (voting fraud) until now.
I agree that OP is pretty unashamedly doing "bad" stuff. That said, if it was a jr dev who really had a different question that was closed, and had searched through SO and couldnt get help, I would be more apathetic/agree with the decision.
That said, SO should link the duplicate question to the answer question if it does exist. It would stop this behavior and be very useful
I agree that OP is pretty unashamedly doing "bad" stuff. That said, if it was a jr dev who really had a different question that was closed, and had searched through SO and couldnt get help, I would be more apathetic/agree with the decision.
That said, SO should link the duplicate question to the answer question if it does exist. It would stop this behavior and be very useful
He has found a way to keep his question alive, at the known cost of generating what is likely going to be garbage for posterity (I am exaggerating here, but bottom line is that if a question is being closed, it probably is not useful to posterity).
He realizes his question is not good, yet instead of spending extra time to make it better, he votes on it from multiple accounts.
I agree the initial reply may have been a bit harsh, but you must see the irony in saying
> There are allot of uniformed assumptions being made here...
followed by
> What most people do know is that Stack Overflow is a shit show in decline.
As somebody who contributes regularly to StackOverflow, I understand where you are coming from. That said, you have to understand that the people answering your questions are under no obligation to do so. If a question comes from a newcomer who has never yet contributed anything, why should I be motivated to put any effort into figuring out the problem and answering if the asker hasn't put in any effort either?
1) you have basic questions older than 6 months with correct answers you haven't marked as correct
2) you clearly show an ability to program, however ask questions that you should be able to debug yourself easily. I think this is the main issue. In your question about the return value of prompt, logging the response should show you it is clearly not the value "null".
Have you learned about the browser developer tools? If you're using Chrome, you can press ctrl+shift+j to open them. On Firefox, it's ctrl+shift+k.
Then you can type in JavaScript expressions and see what they evaluate to. Even better than that, it has auto-complete functionality. I noticed you asked a question on SO about checking the length of a string (you named it str). If you type
var str = "asdf";
and then
str.
into the command line of the developer tools you can actually see all the properties of your string and tab to auto-complete to .length or whatever else you'd like to see. It's a really quick way of poking around and experimenting with things to see how they work. There are a lot of other features like debugging break points that you'll discover over time, too. Good luck!
There are tons, maybe not direct alternatives, but you are not looking for one. It's hard to suggest anything without knowing what kind of "junior dev" you are, but usually specializations, frameworks and even languages have their own communities (Slack, Gitter, forum, Discord, subreddit, you name it), you should look there.
Just don't forget about doing your homework first, amount of effort you put into a question directly influences answers you get. If you take time to do a research, share what you already learned/tried, build a good case with code example (e.g. minimal reproduction on jsFiddle or Codepen) and make it easy for people to help you, you will get help. Otherwise, everywhere you will experience what you did on SO.
Definitely check out Slack channels for the languages you're using. Many bright and helpful people hang out on IRC / Slack, and now it's easily accessible via browser.
You are likely falling foul of three possibilities...
1 - Making your questions far to specific, so nobody else could ever benefit from seeing the answer to that question in the future. These tend to be down voted very aggressively. So you need to try and find a more generic way of asking the question so that others might be helped by the answer as well.
2 - Just plain dumb questions. Such as 'I needz site like Facebook. Hope to make? Helpz'. If you are doing that and do not understand why it is a bad question then I probably cannot explain it to you.
3 - Making you question so that it looks like you are lazy and getting others to do the work for you. For example, questions that look like someone's homework. No one wants to spend time answering if the questioner has obviously made no effort to solve it themselves. Stackoverflow should be the last resort after several hours of trying.
The site is basically made up of professionals and that often determines if the question is considered too simple or not.
He asked for alternative websites. You gave him the same kind of response he's getting on Stack Overflow that's prompting him to seek alternatives in the first place.
And the answer is the alternatives all suck because they are filled with people asking rubbish questions. If you want a community of people ready to help you, maybe consider putting in enough effort to make them helping you easier.
I highly disagree. His suggestion was helpful and not at all condescending. It could be wrong, or incomplete (there may be another reason why OP isn't getting traction), but that is very different from getting dumped on.
I'm not a junior developer and I rarely ask for anything on SO. I've just found it to be a shitty experience all around, and as someone else mentioned in this thread, people on that site are bullies.
There is a common misconception about Stack Overflow that it is there to help the people asking questions. While it doesn't sound nice to say it, that isn't really the purpose.
Stack Overflow is here to help all the future people who see the question. This is why someone who posts a lot of highly-upvoted questions but no answers is still a valuable asset and receives a high "reputation". This is the great value in Stack Overflow, really. Answers you see there are generally not targeted specifically for the asker, but rather are helpful to broader uses and many more people. Questions used to be closed merely because they were too specific and unlikely to be helpful to future readers.
Stack Overflow is meant to create a library of question/answer combos that make (theoretically) all future programming questions redundant. If your question is unhelpful in that ambition either because it already exists, it lacks clarity or specificity, etc., it will be closed. Granted, SO has the nasty people that come with any community-run site, but there are also many, many helpful and friendly people who will take the time to explain things either about your question or why the question doesn't fit the guidelines of the site. Without seeing your posts, it is impossible for me to say what was wrong with them if anything. I can only speak from personal experience.
My first question was posted after weeks of research and headaches. I read the help pages that were linked for me. It took two bounties before I got an answer, but I got one. While waiting for that answer, I decided to see if there was some way I could pay back for the answer I expected to receive. I learned a lot about the site by seeing the responses to other people's questions. I also, incidentally, learned a lot about programming by how others responded to my answers. By the time I posted another question, I knew the site pretty well. I have now posted 11 questions, and my only downvote was on a post with 10 upvotes.
This is why although we have an active Slack with a #questions channel, we try to direct people to StackOverflow. Because you end up having people ask the same questions because Slack is not indexed by a search engine (unless you do something fancy).
What we do a lot is when someone ends up asking a question on Slack, I'll just cross-post to StackOverflow and answer there. We even have a bot that posts StackOverflow questions back to the channel.
Slack also isn't great because you'll have multiple people asking a questions at the same time with long code snippets. It gets messy.
First, I want to tell you I know exactly what you mean.
When I learnt programming, SO was not around. I mostly learnt by reading source codes, their authors' blog posts, and asking them questions. I started to use SO mostly by answering questions, since the languages and tools I used were already well known for me, and I had my previous ways to learn new things.
And then, I started learning golang. At some point, I said to myself : "why not start asking questions instead of learning everything by myself the hard way, like I usually do?". I asked a question on SO and was immediately downvoted. This came to a surprise to me, because my question was concrete, detailed and was wondering about something that wasn't explained in any publication. Then I started looking at other questions, and it was alarming : most were downvoted. Actually, I computed an average of questions scores and realized it was negative. That's when I stopped contributing to SO : blaming people for asking questions is not OK. If the question is really bad, suffice not to answer it.
I've been looking for alternatives since then - that is, general programming discussion platform with specialized areas - mainly to contribute, because explaining to juniors how things work is a perfect way to learn to document things, know what they find complicated, and learn to address it before questions arise. I found none. The best I could find was to fall back on mailing lists.
There are two pieces of advice I could give you :
* don't hesitate to mail people you regard as the most experienced to ask for their advice. Worst case scenario, they won't reply
* Choose ways of communication that don't allow downvoting - like email, forums, google+, whatever - because downvoting features do encourage hive mind and condescendent attitude
Also, please keep this experience in mind next time you'll be the one to explain something to someone having less knowledge than you. And remember that downvoting == bullying.
Sure there are alternatives, for example: IRC, mailing lists, bulletin boards, paid consultants, conferences, official documentation, unofficial documentation, videos, books, podcasts, magazines, and trial and error. For some things, for some people sometimes, they're even better than StackOverflow. For many things, much of the time, for many people, they aren't.
Good luck.
[Edit] There was a difference of opinion about StackOverflow between Spolsky and Atwood. The famous question (or infamous, depending on your perspective) is Spolsky's "How do I move the turtle in Logo." [1] Spolsky thought it was an example of a good question (that's why he wrote it). Atwood disagreed. Atwood's view won out and people were given license to decide basic questions were stupid. Some of StackOverflow's tribes use that license more than others. Partially it's a survival mechanism...I can only imagine maintaining PhP, Javascript, or Python. Partially, it's just people being bullies (bullying of people posting 'homework' questions being sanctioned, de facto).
You have google, you have docs on whatever you are working with. Figure out the solution for yourself. Worst case you can't, but you might learn something else while trying.Depending on what you rae doing you might find some mailing lists, forums, or other dedicated communities.
oh, and there is always the person sitting a few feet away.
Find the subreddit for the particular language you are using. r/learnpython and r/djangolearning have been amazing when I couldn't find any answers on Stack and people seem eager to help all levels.
If this is genuine (and it feels that way) then flagging it not the right way to handle this. Downvote the post and hope the community agrees but flagging something that isnt outside HN guidelines is a bit strong unless you believe itvis a new user trolling
They could add a "newbie" tag: this makes the question immune to downvoting (?) and is by default (?) not shown in the main feed, people have to opt-in to help with the newbie questions...
We are all lazy, but when a newbie is lazy it looks rather heinous to the expert. I got a friend that I am helping to start programming. I see that he "gets" it, but guess what, he's fairly lazy (like me) and is constantly stuck on simple simple stuff. If he went to SO with that he would get obliviated for sure.
Looking at the questions you've asked, it's clear why you're having such a bad time there. You're posting homework questions that you've clearly not put even a little bit of effort in to solving yourself. To take an example at random:
Imagine you walked in to my office and said "Hey, mentor, I wrote str.length() and the browser told me that "str.length is not a function". Help!"
I'd say "OK, so what did you try?"
And you'd say "I came here and asked you."
Can you see why that might not get you anywhere? Asking people is not the first thing you do. It's the thing you do after you've exhausted every other option.
You're not doing any research, not trying anything, not even googling the error messages you're seeing. You're just giving up and asking Stack Overflow to do your homework for you. In half your cases, you're just asking the homework question directly before even opening the editor.
So the thing to change is not the site you ask your questions. It's your approach to learning. Try things, experiment, look things up. It's OK to fail and ask for help. It's not OK to ask for help before you've even made an effort.
Interesting that your example question has plenty of answers. Those people apparently did not have a problem with the question.
I believe it is hard for experienced developers to remember how it is to be a complete newbie at something. People just assume is a lack of research.
I started learning to code last November. More than once I spent hours (literally hours) googling around why my code wasn't working when it was very stupid, simple details. Lot's of things only present themselves as obvious once you know the answer. Error messages are a knowledge in itself. They are designed for experienced people to understand, not to beginners.
Tangentially, for some reason, experienced developers usually recommend MDN as reference when learning how to code. I always find W3Schools more clear and to the point. MDN might be good if you already is a senior developer and is learning a new language. But if you are starting to learn to code at all, W3Schools is a better site for me.
Back to Stack Overflown, I don't have any resentment for it at all. I love it! It helped me a lot! Mainly because most questions are already there. But when I have a doubt that isn't, I don't even consider asking it. Hours of google sounds better than being noticed in a hostile environment. That is why I believe SO is great for PHP, Python, Javascript... now. But won't be all that useful for NodeJS or any new languages/frameworks in the near future.