I was involved in two small SO teams that both failed quickly. Don't have a success story, but a perspective of why they failed.
Both teams shared a common feature: their aim was in creating a database of frequently asked questions so that people can be directed there to "catch up". Trouble is - nobody factored in that somebody needs to write those answers first. Angels didn't come from the sky when someone had questions. Naturally competent people were doing things that they got recognition for, instead of providing answers to what, in essence, was their competition. So people with questions ended up answering each others questions, often times incorrectly. As neither side was satisfied with this arrangement the teams deflated and slowly died out.
So in summary I think lack of real world incentive is to blame. Answering general programming questions where all world sees your imaginary reward points is more satisfying than doing regular work for those same points behind closed doors.