I love the concept of StackOverflow.....a super Q&A site, moderated by the users themselves. Everything is searchable, taggable, editable. From time to time, I'd search a question on Google and find myself at StackOverflow.com quickly getting an answer. What's not to love?
That is, until I started actively contributing to it.
Let's face it, programming languages, frameworks, best practices and the like change much more slowly than it takes for someone to ask a great question about those changes. The good questions are already asked. So, what's left? High school and college kids pasting homework questions into SO, lazy programmers asking a question directly rather than taking 30 seconds to search for it, lazy programmers asking for someone else to debug their code, and SO users intentionally asking questions to gain reputation. That's about it.
Since these questions have little value to anyone other than the person asking the question, as soon as it is answered it will sit unused and unloved down in the dirtiest corners of some database. If you want to earn any reputation, you don't just need to answer the question, you need to answer it *now*. And you need to cross your fingers because providing the correct answer doesn't mean you'll get anything. You are still racing the other SO users and entirely dependent on the asker selecting your answer as correct.
What an odd situation that is! You have groups of software developers fighting to be the first to do some CSCI 101 homework to earn reputation. Which raises my next question:
Why Do You See The Reputation and Picture Of People Who Participate in SO?
If you wanted to impartially determine which answer in a list of answers is the best; certainly, you'd want to EXCLUDE that information. Let each answer be judged on it's own merit. Isn't that supposed to be one of the defining positives of the internet? Anecdotally, I've found that the more reputation I earn, the more likely I am to receive upvotes and the less likely my questions are to be closed. Because, again, the majority of questions are trivial it's not uncommon for multiple people to post equivalent answers within seconds or minutes. Who is most likely to get the upvotes/accepted answer? Whomever has more rep and more badges. And a picture! Either a funny, clever or professional one seems to have the best results. If you have 1 rep and the default autogenerated image....well, it'll be an uphill battle.
Don't get me wrong, I'm not against tracking reputation or having a profile picture. I'm also not suggesting that the top members of SO aren't really smart, really knowledge people. But the question of 'why' is a pretty obvious one. The creators of StackOverflow and the sister sites (StackExchange, I think they are calling it) have really just provided a framework for Q&A (and please, don't think I'm trivializing their work...it's a GREAT Q&A Framework. Arguably the best ever created). The *value* of the site, the reason people go, is to get answers. When you answer a question, you are, quite literally, unpaid tech support. There is very little tangible benefit to you. Some people will argue that you are *learning*. I don't buy it. The same time spent reading a book or following tutorials would yield far more knowledge than the same time spent answering other people's questions on SO. So, instead, you are paid in bits. Virtual badges of honor you can proudly display. But is it worth it?
Maybe. But not for me. I'm leaving SO for the same reasons I left WoW. I've going to chase a carrot, it's not going to be a *virtual* carrot.