I have just found that a student has posted one of their assignment questions on a forum and is seeking help in getting a solution.
I have a good idea who the student is, but no definitive proof. How would you handle this situation?
Identify the offline equivalent of the observed behavior, and then act as you would normally. Remember, that the burden of proof for academic dishonesty likely resides with you. This includes verifying that the poster is indeed the student you accuse.
I find this situation to be pretty common: http://chemistry.stackexchange.com/questions/2753/how-to-derive-partial-gas-equation. Most stackexchanges have a homework policy. I would consider homework questions posted to stackexchanges to be no worse than asking students who have taken the course before you or asking another professor. How you deal with it is up to you.
What would your response be if you saw a student collaborating on the problem in a study group? How do you respond if you find out that your student asked another instructor or a grad student in your department for help? If you learn the student worked on that problem with his/her tutor? If the student looked up the answer in the textbook or the solutions manual? All of these are common and to varying degrees accepted (if not liked).
I would guess your irritation over this is somewhere more than the student asking one of your colleagues (who being nice will actually do the problem) and somewhat less than the student stealing another student's answer. Identify the offline equivalent, and then behave as you would normally.
EDIT - I missed the last part of the question.
If you do not have proof, then suck it up and let it go - this time. Next time put something in your syllabus. Either write a pretty severe sounding policy that exists to deter the behavior (because your policy will be basically unenforceable), or write harder questions and encourage them to use online forums with the caveat that they document all of their interaction. The second option shifts the burden of good behavior to your students.
This is an answer to this question. The question was closed as a duplicate while I was typing my answer.
This is a really key issue for university courses assigning homework. In my opinion it cannot be satisfactorily addressed after the fact. One has to design the homework and the grading scheme with the knowledge that students can easily, freely and virtually immediately get expert-level homework help online. Here are some ways that I have adjusted to this reality.
1) I no longer assign take-home exams in undergraduate courses. I had a bad experience with this ten years ago as a postdoc at McGill University, and the internet was not then what it is now. It only takes one or two students to cheat and get the highest grades on an exam for the entire class to feel resentful.
2) I think very carefully about the percentage to which homework contributes to the course grade. If you want students to do the homework, then making it less than 10% typically (depending upon your grading system, of course) discourages it. I think that most undergraduate-level STEM courses should have at least one midterm and an in-class final and that the midterms and the final should contribute at least 60% of the course grade.
3) I grade -- or, if I'm lucky, instruct the grader to grade -- homework in a generous way which emphasizes effort and participation. If the majority of the course grade is coming from in-class exams, the purpose of the homework is to get practice, and if someone is writing good-faith solutions to most of the problems then they are getting the practice you want. When students feel like their inability to solve difficult homework problems is hurting their course grade, it is very tempting for them to seek outside help (I find this very understandable).
4) I allow students to get some level of outside assistance on their homework -- i.e., don't regard each problem set as a separate take-home exam -- but insist that they document the aid that they got in an assiduous way. If I get students in the habit of saying something about the help that they got, then it feels much more like lying for them to all of a sudden totally omit reference to the fact that they typed their questions in to a stackexchange site. Also, be clear about what kind of help is allowed. Perhaps for instance you are okay with them looking through the internet but not asking your specific homework problems on the internet: if so, say so.
5) If I don't want students to be able to look up the solutions to homework problems easily (beyond say the freshman/sophomore level) then I make sure to write my own problems and not simply assign problems from a course text. Writing distinctive problems also makes it easier to track whether my problems are being asked on the internet.
6) I realize that how much independence to spend in doing one's homework is, within an agreed upon tolerance, a decision that individual students have to make for themselves. In the OP's case homework is worth only 10% of the grade, it does not sound very onerous, and the OP spends class time discussing the homework. In this case the old adage that a student who is not doing the homework independently is "only cheating himself" seems to be largely true. The trick is to design the homework and the course so that you feel that the students who are punting too much of their homework to the internet are indeed merely missing out on educational opportunities...and not getting better final grades than those who do most or all of the homework on their own.
Analysis of the Issue raised in this question
I thought about this a bit over lunch and came to a realization that we may be looking at this problem from the wrong direction.
Premise: A student is getting assistance for homework from an online forum.
Now, the internet may have made this process easier, but it certainly existed before online forums. The only difference now is that the online forum shows a proven record that a student is doing it.
Before the internet was invented, I'm pretty sure people in school asked friends for help even when it was explicitly stated that homework was to be personal work. Maybe some students paid people to do their homework. Whatever the case, that issue would be private to the professor's view, because the agreement would never move beyond those two people.
In this case, we have the internet indicating that such an event actually took place. If this took place on a phone, or in a conversation between two students, we wouldn't have noticed it, but the transgression would still have happened.
So the internet is facilitating the aspect of "academic dishonesty" and providing it in public view.
We can't ban reasonably students from using the internet, nor can we lock them up outside of class to do homework, so there is no real way to regulate what they choose to do outside of class.
As a result, the only practical way to determine whether homework is a student's work is to observe their progress in class.
As I suggested before, a surprise quiz with the same questions will likely help you determine who is learning and who is not. Collect the homework, and devote 5 minutes of the class to solving one of the problems. maybe an easier one. People who know what they're studying will be able to answer this, and you lose a minimal amount of studying time. You only have to do this once or twice. After that, the possibility of another surprise quiz will likely convince the person to actually learn the material.
Have students work in small groups on their homework. Students working with each other may frown upon use of Stack Exchange. By encouraging class collaboration, you can reduce the amount of reliance on the Internet, because then at least you know one of the people in the group is teaching the others.
Unique Homework for Unique People
This is more of a "finding the person" approach rather than discouraging. As I've mentioned before, I'm not a fan of this strategy as it is really a witch hunt technique, but it is a possibility that you may wish to consider if nothing else works.
You can assign different people in the class different homework questions. Sort by name or whatever. Maybe a set of 15 questions where each person in your class has a unique subset of questions. This will help you identify the person in question if they post their unique subset to the StackExchange. I would recommend you use this information to gently remind the person that what they're doing is not in the spirit of the course, and to not do so in the future.
I've started assigning homework a couple of years ago, and my policy is the following:
In the few occasions in which I required to write lab reports, their marks contributed for at most 10% of the final grade; in case of cheating (to my judgement), the contribution is zeroed.