Tom Butler's programming blog

Why no comments?

So here's a question I get asked from time to time: Why don't you allow article comments?

It's a very valid question so I'll answer it publically. Debate is good and constructive criticism is great.

The main reason is time. As much as I'd like to spend more time on this blog, work and other commitments mean I cannot devote as much time to this blog as I wish I could. As you can see from my update frequency (4-5 articles a year), this blog isn't exactly a full time commitment! Answering comments and filtering out spam is not something I can commit enough time to in order to make it worthwhile. In my opinion, leaving a comment unanswered for 3-4 weeks isn't useful to readers.

In addition, most blog comments do not fall into the category of constructive criticism or open questions. Here's a few types of comment which are detrimental to blog posts:

  • "Nice article!"
  • Spam
  • People missing the point and starting an argument about an insignificant detail which has very little to do with the content of the post
  • People without enough understanding of the topic trying to start a debate.

The top two are pointless for readers. Nobody wants to go through a comments section and see spam or fluff meaningless posts making those comments entirely worthless.

The second two are a little more poignant. As my blog posts generally try to convey specific concepts or best practices, people who miss the point or try to argue against something I've said because they don't have enough understanding of the foundations it's based on make it look to others like what I've said is controversial or less valid in its own right. Not based on any presented facts, but just because they've framed it as a black/white debate.

Consider Evolution vs. Intelligent Design. To anyone with an understanding of science, there's no debate there, however, because Intelligent Design proponents frame it as a debate, it makes it more difficult for anyone with a lesser understanding of the topic or science in general to see the difference between the two arguments and actually slows down learning.

My readers are programmers at a variety of skill levels and by entertaining a "debate" in a comments section it makes it more difficult for those who are trying to understand the point of the post because they're then presented with often non-sequitur and straw-man arguments by other people who miss the point and have posted the comments section.

Of course as a relative novice, it's difficult to work out what's going on when presented with this seemingly contradictary information. Many of my readers can distinguish this for themselves, but a lot cannot. Consider knowing nothing of science and looking at the Evolution vs. Intelligent Design "debate", you have a lot of catching up to do before you can begin to form your own opinions, even though, once you do, you can see the arguments for Intelligent Design are ridiculous.

I get many emails, I'll paraphrase a few from the last week:

Re: Are Static Methods/Variables bad practice? - You contradicted yourself by saying statics are generally bad then presenting two cases where they're not problematic n.b. I provided two exceptions to where they won't cause you problems.

Re: The $this variable isn't as Object-Oriented as you think it is - Why do you expect inheritance to solve that problem? It doesn't work that way! n.b. I showed exactly why inheritance can't be used to solve the problem, I never said it did. I said it seems as if inheritance could be a solution but here's why it's not.

Re: PHP: PSR-0: Pretty Shortsighted, Really - But PSR-0 works and everyone uses it, stop complaining! This is a perfect example of someone missing the point. It does work, but it's far from ideal.

Re: PHP: PSR-0: Pretty Shortsighted, Really - PSR-0 isn't designed to do that! Which was exactly my complaint. It's poorly designed. However, the email was framed in such a way that it was acting like they had negated the point I was trying to make... by essentially agreeing with me.

Re: Are Static Methods/Variables bad practice? - But this makes sharing a database object hard work, I need to pass it in to every class which needs it! I'd need to re-write all my constructors. Seems stupid to me.

These kind of emails, if they were in comments, would detract from the point of the posts by adding confusion and contradiction by people who show that they don't understand what I'm trying to say. Now, that is likely in a large part my own fault and I apologise for that. Perhaps I didn't express my point in the best way possible, perhaps I could have provided better examples. However comments such as stop complaining! detract from the point of the article without actually refuting anything and to anyone who's come here to learn and doesn't fully understand the post, stops them thinking about it and gives the points in the original post less weight because to an otherwise uniformed audience it makes it appear there's something wrong in the initial post, when often, there's not and people make critical comments framed as a debate because they don't understand the topic at hand.

Not understanding is fine. Asking for clarification is fine. Pointing out mistakes is fine. Genuine debate about concepts is fine. However, making a point of missing the point and then presenting it as a refutation is detrimental to the understanding of other readers.

These kind of comments are not beneficial to other people because people who may be struggling to grasp the concept or understand it but need to think about or test it themselves will see the argumentative comments and wonder if it's their own understanding that's wrong rather than the commenter who has missed the point and framed their question as a debate.

That said, a lot of my readers email me with well thought out, insightful and genuine questions and critiques. These would be perfect for a comments section because they encourage further discussion and exploration of the topic.

So why don't I just moderate the comments?

In my opinion that's worse than having no comments at all. Being seen as only allowing comments you "approve of" is considerably worse than having having the same rule for everyone. To those whose comments I don't post, it seems like I'm not posting their comment because they disagreed with me. Even if it was because they missed the point and it would not have been helpful to other readers.

I'm not the only one who dislikes comments. The Popular Science website shut off comments a few months ago and their reasons are strong and similar to mine but back up their reasoning with a proper study:

"But even a fractious minority wields enough power to skew a reader's perception of a story, recent research suggests. In one study led by University of Wisconsin-Madison professor Dominique Brossard, 1,183 Americans read a fake blog post on nanotechnology and revealed in survey questions how they felt about the subject (are they wary of the benefits or supportive?). Then, through a randomly assigned condition, they read either epithet- and insult-laden comments ("If you don't see the benefits of using nanotechnology in these kinds of products, you're an idiot" ) or civil comments."

Please keep emailing me questions but hopefully this helps you understand why I decided not to allow comments on my posts.

- Tom