[EDIT: 2/5/17 For those referred here as well as everyone else! ]
READ THIS FIRST!!! If you were referred to this post, please don't take it badly or the wrong way, especially if you are new to the forum. The intent is not to admonish or criticize, or anything worse. It is to instruct and correct something to set you on the right course so that you can get the most out of this forum, and to make it easier for others to respond! If someone is doing something wrong, they can't fix it unless they are made aware and instructed on how to correct it. It's best to fix these behaviors before they become bad habits!
Everyone in this forum wants everyone to benefit as much as possible from its use. While, I admit, this post may sound a bit snarky in places, it is straight to the point to describe what not to do! Please read it and think about what to do - how to do it right - to get the best help!
I've also enhanced part of it a bit, particularly "The Code Drop", adding a section on what to do instead. If you want to see the changes, look at the edit history.
Happy Coding! ;-)
A forum participant recently asked why their questions were being ignored. It made more sense to me to answer that here in meta with a question on the topic that others could respond to so that new users could see the sentiment of the community. If you have a comment or an answer, if you agree or disagree, please add a comment or an answer to the collection! ;-)
There are several reasons that questions won't be answered. Let's run through the list.
"CAN YOU REVIEW MY CODE? DOES THIS SEEM LIKE IT WILL WORK? "
Or, "please tell me if my code is working properly? " My answer is "Don't you know? Haven't you tested it? " When a question starts out like this, a lot of people stop right there. It implies that the question author (QA) hasn't done the testing or the work to even find a problem, let alone solve it. My belief is that most people won't read past this. They would rather help someone that appears to be trying to resolve their problem. They will demonstrate this by stating what the problem is, what the symptoms are, and will provide details about what they've done to try and solve it. The philosophy here is that we don't do code reviews. Find a friend to do that. This forum is about helping someone find the root cause of specific problems.
[Edit: addition 9/17/2017] This is not to say that specific questions on "how do I do something" are inappropriate. Quite the opposite. If you have a specific topic that you just don't understand, even after watching the class material and doing research on it, then absolutely post a question with specifics about what you want to know, what you don't understand about it, and what confuses you! The community will try to help you understand.
"PSET 1 vs. PSET 5 vs. PSET7, etc."
If you ask about initials or mario, there are a lot of people that have been through it and can help. These are the low hanging fruit and usually get answers in a few hours to a day. By the time you get to psets 4 and 5, the complexity has gone up a lot, and the number of people that can answer intelligently has thinned out considerably. Here, it may take a hours to a couple days to get an answer.
Finally, for pset6 and above, the number of people with the skills to debug is really small in this forum, for 3 reasons. First, the number of people coming up to this level is smaller due to attrition. Second, the skill set is radically different from the first 5 psets. Third, once people complete the course, they usually don't return to help others. That's just life. This means that questions related to the psets at the end of the class frequently take days to see answers because the number of skilled people at this level have thinned out so much!
[Edit: The specifics of certain psets change from year to year, but the basic concept of this section remains the same. Be Patient!]
Lastly, if it involves a technical issue such as with the IDE, or with class policies or things like why a grade isn't showing up, etc., then it usually has to wait for a moderator, and even then, sometimes for the right moderator. In these cases, be extra patient. Usually, once they see something, they act quickly. Sometimes, the response is waiting on investigation of the issue behind the scenes, or it has to be passed to staff. No matter what, though, they'll respond! Be patient. The staff and moderators do a lot for us! ;-)
"THE (NAKED) CODE DROP"
If you were sent here because of this, please review this and then go back and edit your question. Don't feel that you're being chased off! Too often, when a question is identified as a code drop, the owner just deletes it and moves on, or quits. Nobody wants that! Just review this, and then edit your question with the additional material described here. We WANT you to ask the question, but we also want to get an idea what you understand about the problem! We also love to help people find a solution!!!
This is one of the most common problems. Sometimes called "the naked code drop", this comes in two forms - The question is squeezed into the title and the question itself is the source code. OR, the title is "Please help" or something as simple, with the code in the question and no explanation. This is called a code drop, where the QA is expecting someone to figure out both the problem and the solution. In other words, "please do my work for me!", even if that isn't the intention of the QA. Most people on the forum hate this. It will usually draw their ire in the form of down votes and votes to close. It's also prohibited by forum policy, although it gets through more than it should. PLEASE DON'T DO THIS!
THERE'S A BETTER WAY! Instead, give a descriptive title. Then, in the question, describe what's happening with good detail, where you think the problem lies in the code, what you think might be the problem and what you've tried to do to correct it. Be sure to provide the relevant code. Whenever possible, provide examples of output, if appropriate. If it's something like "the compiler won't build my program", or something similar where your command isn't compiling or executing your program, be sure to include the actual command that you tried to execute.
In short, try to give a full picture of what's happening that everyone can understand, even if you don't. This is what everyone will eagerly welcome and cheerfully respond to!!!!
"BAD FORMATTING" or "CODE IN AN IMAGE"
When questions are posted with code, and not properly done, it's a mess. All code should be formatted as such. It's easy. Just highlight your code and click on the curly braces up above the entry window and the system will format the whole thing in a scrollable box for Stack Exchange!
Of course, this doesn't deal with code that is poorly formatted to start with - inconsistent indentation, excessive or no whitespace, etc. If in doubt, (and maybe even if you're not) please run your code through style50 in your IDE. This will only look at formatting and will point out errors and inconsistencies. Once it passes there, it's ready for posting.
Also, don't take a screen shot of the code in your IDE and paste it into the question. It can't be copied from there for testing and nobody wants to transcribe a program from an image. It's a pain in the backside and errors can be added or existing errors corrected inadvertently in the process. These may or may not get ignored.
"REPOSTED AN HOUR LATER or WHY NO IMMEDIATE ANSWER?"
This will get attention, but usually not the kind that the QA really wants. The response will vary across the spectrum. It might get answered, it might get downvoted, flagged as a duplicate, or just ignored. People don't live here, not even me (believe it or not), so a response may take a day or more, particularly the later psets. It may be so complex that people need to think about it before answering. BE PATIENT!
"MY QUESTION WAS ANSWERED BUT IT DIDN'T WORK. WHY NO RESPONSE TO MY COMMENT? "
There could be any number of reasons. Maybe nobody has seen the comment. Maybe they don't have an answer. There are a number of answers along this line. Or it may be for a totally different set of reasons. Maybe the QA replied to the answer 5 minutes later with a comment that it isn't working and it's obvious that they haven't tried to work through the new problem. Here's a common one: the QA discovers a new problem, posts it as a new comment, changes the question to the new problem, or asks a new question, but it's been 5 minutes later and they clearly haven't tried to solve it. Most people I know will let it simmer for a while and let the QA spend some time on it, maybe a day? While everyone here loves to help find a solution, nobody wants to just do the work for someone else.
On a related note, when you do find a new problem (not a closely related issue or variation on the original problem), please don't update the current question. It confuses anyone that may be reading the question to resolve a problem they are having. Instead, accept the answer to the question that has been asked and post a new question.
" PLAGARISM and STEALING WORK"
This is the worst offense. The good news is that it appears to be very rare. When it does happen, and it is discovered, action is usually taken behind the scenes. Usually, if a forum member believes someone is doing this, at minimum, they will stop responding to the offending user. At worst, the offending user can be removed from the forum and the matter can be submitted to Prof. Malan and staff for further review and action.
The good news is that most people in this forum want to help others and it's a friendly place. Sometimes, it simply just takes time to get an answer. The low hanging fruit, the simple stuff, gets quick answers, while the complex questions are more likely to take time.
Finally, if it isn't getting an answer here, there are several other forums that are more interactive that anyone can access, referenced in the class web page under the discussion tab.
These are my thoughts on the subject. Do you have any thoughts or opinions? What causes you to pass on answering a question? Any difference of opinion on my comments? Do you agree? Disagree? Let everyone know by posting a comment or an answer of your own!