I noticed Stack Overflow pages in Google a while back when I was looking for answers relating to Rails. The first few times I just wrote it off as another QA site and I didn’t really give it a second look. But during the last few months, I began seeing more and more results in Google and I decided to create an account and see why this site was getting so much exposure. After using it for 2 months, I must say that it is the best QA site for programming related info. Here is why you should use it too:

1.  The layout and setup of this system is great. You ask a question, then people can leave comments below if they need more information.  Then you get answers below the question ordered by a voting system.  Stack Overflow users rate each answer and can also comment on each answer.  This gives you a good indication if other experts think the answer is correct.

2. Tagging – You can tag each question with popular subjects.  People who like to answer questions can save tags they like and the latest or hottest questions are very easy to find.  This increases the visibility of your question to different groups of people if you use multiple tags.  I find this much more appealing than using a forum, since you can relate the question to more than one subject.

3. Voting – I get a warm fuzzy feeling when I see an answer with plenty of positive votes… more than likely this is the best answer to the question.  And newbies can’t upvote until they use the system for a bit.  Not a new concept, but I like they way they have this integrated into the system.

4. Reputation – At first I was pissed that I could not upvote questions (and maybe some other stuff?) until I had a few reputation points.  This helps weed out the spam and ignorant responses.  People are trying to build their rep and this system gives users badges and points.  This keeps me interested and makes me want to answer more questions.

5. Learning by answering questions – since this system is so easy and fun to use, I find myself trying to answer questions even if I don’t have a complete understanding of the right solution.  I am not saying I post ignorant answers.   Instead, I do the research and learn it before I post my answer if I feel confident that I learned the correct solution.  This helps me learn new things and also helps out others that may not have the background to find the right answers.

6. Expanding community knowledge. I find this a great place to interact with the Ruby/Rails community.  I would much rather see a Stack Overflow result in Google than a blog or other website.  Many times these QAs have links to all the relevant blogs and a much better discussion.. and also a voting system.  I think this helps the community come together and figure out tough problems relating to their technology.

What else can I say.. I really like SO.  They took alot of great ideas and packaged them together in an easy to use system.  Simple and powerful at the same time.