My favourite site this month is definitely Stack Overflow. I first heard about the site a few months ago from a friend when it was first in public beta. I remember thinking that it was an excellent idea and that it would probably prove very valuable in the future although, at the time, it was a little immature and lacked much content that I was interested in. Since then, the site has been mentioned in a lot of blog posts, mailing lists and forums so I thought I would give it another look. Sure enough, the site had loads more content and is now an excellent resource.
Stack Overflow is focused very specifically on programming. By that I mean that any questions that are not considered to be programming related, such as those to do with administrator tasks or specific program features, are closed down by the community. I was stung by this in one of my first questions as I asked a question about what the differences between Linux distributions were and why I would use one over another. Within five minutes my question had been closed down and was told sternly that the question was “not programming related”. Whilst I was a little disgruntled at the time I have come to realise that this strict moderation is one of the key factors that makes the site so valuable. There is no spam and no mindless off-topic discussions (except for the ones that the community deem worthwhile and these are normally quite entertaining).
So, apart from the rigorous moderation, what makes Stack Overflow so much better than a normal forum or mailing list? Well firstly the threads are not threads in the forum sense but are, more specifically, questions. The questions are supposed to be clear, concise and should ideally not be subjective; questions on the site should “have an answer”. This means that the site is less about discussion and more about finding the answers to specific problems or queries. Good answers (those with the most votes) bubble to the top of the list of answers whilst good questions (again, those with the most votes) bubble to the top of the list of questions (and may even end up in the prestigious questions of the week and month lists).
The site becomes very addictive due to its clever reputation and reward system. Every time you get a question or an answer you have written voted on you gain or lose points. These points are called reputation and the power you have on the site is determined by your reputation. The more reputation you have, the more of a say you have in moderating the site. It is easier to gain reputation than it is to lose it as you only lose 2 points for a down-vote but gain 10 for an up-vote. Rewards, or badges, are items that appear on your profile for completing certain milestones (e.g. having a question with 1000 views). Whilst they don’t mean anything regarding your status in the community they are little pieces of pride that encourage you to contribute and get involved further.
There are some weaknesses to the site in my opinion. Firstly, due to the community from which the site was launched I find that the questions are mainly focused around .NET related technologies more than any other topic. This is changing however and hopefully will continue to do so in the future. Also, one side-effect of the voting system is that questions that have universal appeal (general programming or software engineering questions) always end up with more votes than questions on a specific topic. Whilst this makes the site an excellent resource for good general information I find that good questions regarding a particular technology often get lost amongst it all. The tagging system goes a long way towards removing this problem but I don’t feel that the current preferences you can make on the site allow you to filter out topics you are not interested in easily enough. It would be nice to see a more customisable front page and a way of completely hiding questions with specific tags.
I mentioned earlier about the lack of other IT related questions but there are plans for a sister site to fulfill this need. I look forward to seeing the results of that in the near future.
I hope I have tempted you to at least take a look at Stack Overflow (if you already have an OpenID account you hardly have to do anything). The more people that contribute the better the site will be. See you there!