Having used Stack Overflow for over 30 days now, I'd like to share a few of my personal gripes with the site. Those of you who are frequent Stack Overflow contributors may disagree with the views I express below; if so, feel free to leave a comment. I'm going to try my hardest to point out issues that seem particularly problematic to new users. My next post on this subject will cover a few ways I think some of these problems could be smoothed over.
- Stack Overflow is a game
- This is a controversial viewpoint, but one that has some merit, especially for the dedicated user base. Every Stack Exchange website has both points and achievements. Given those two incentives, many dedicated users seem to play solely to "win." If you look at the activity reports for some of the top-scoring users, you'll find that they spend many hours a day, every day, answering questions and leaving comments. I recently viewed one person's profile, and saw that he had answered several questions an hour for over 8 hours in a row (he must not have a very demanding job or life)! How can new users "compete" with folks like this?
- The game is, by design, not winnable
- The ultimate irony is that the "game" cannot be won. There's no end-point, no game-over screen; just a never-ending leader board. Other than seeing your name among the top contributors, and apart from gaining a small set of user privileges as your score increases, what's the point? Why have points and achievements at all? I can understand wanting to foster constructive discussion, but won't that naturally occur given the question and answer voting mechanisms? It seems to me that if points were left out altogether, good answers and good questions would still be easy to find, taking precedence over less useful material.
- Being fast is often a requirement
- This is my pet peeve with the site. Because Stack Overflow itself has so many "players," and because they are all playing for the same points, it's inevitable that faster players end up scoring more than slower ones. I pity the person who yearns to contribute, but whose motor impairment makes it difficult to respond in a timely manner. So too the person who may really know what they're talking about but, because they post in haste, their answer contains a mistake, resulting in its being down-voted by trigger happy power users.
- The instruction manual stinks
- Like most documentation developed by engineers, the training manual is way too thin. I cannot stress this highly enough. For the first few days on the site, I was overwhelmed by all the various rules and regulations. Most of my "education" came through mistakes I made early on, some of which resulted in a punishment to my score. It doesn't help that one must dig down into another site to find a fuller set of instructions, many of which should have been in the training manual to begin with. A set of tutorials describing how the site works is sorely needed. I'm a reasonably intelligent person, and if I'm having trouble, think about how many others are out there having the same problem.
- Established users are generally rude to newbies
- This is a problem that cannot be solved. People are jerks. But the points system really exacerbates the issue. I've seen so many negative comments towards new users trying to answer questions; especially towards those who make mistakes in their answers. I had hoped that people would be friendlier, seeing as everyone's goal is (hopefully) to learn and grow as programmers. Sadly, that wasn't the case. I guess I should have known better.
Now that my 30 days are over, I will be dialing back my use of the site considerably. My original intention of helping others may have been noble, but it turns out that there are already too many operators standing by. I question whether that game is really worth playing.