Some random thoughts about comments and readability on the Internet.
I'm concerened about readability. Whether it's code, fiction, blogs, forums or emails. Take emails for instance. If you've spent some amount of time with emailing lists you have probably learned about the dreads of top posting. (If not you have probably no participated that much in the conversations.)
The same problems that arises in lengthy email conversations persists in comment sections and forums on the Internet. To catch up on the discussion and participate usually involves a lot of scrolling and jumping around. Often the timeline is manipulated or reversed, more often than not there's a lot of clutter obscuring the view of the real content and the signal to noise ratio is high.
Technical emaling lists are usually good example of readability. Internet forums are bad examples even though there are those that gets it right ( Reddit springs to mind).
There are three components of a good commenting system. In order of importance they are:
- Sort order
- Conversation threading
The order of the comments should be according to time, oldest first. This is the most intuitive way, giving a natural flow to follow: first read the post and then continue to read the comments.
Last comment first breaks the flow. Clever sorting is discourage since it is confusing. For high volumes of comment it might be necessary with some kind of voting system but for low volume this is best avoided since it destroys the timeline and can be very counterintuitive for a reader trying to catch up on comments.
The Wikipedia article about Conversation threading defines it as:
Conversation Threading is a feature used by many email clients, bulletin boards, newsgroups, and Internet forums in which the software aids the user by visually grouping messages with their replies.
When there's a lot of comments it quickly gets hard to follow conversations if there is no threading suppport. A system that emulates the threading support found in good email clients is a good approach. It can be further enhanced by folding, partially showing the comments, making it easy to ignore uninteresting threads. Reddit is a good example of how to handle high volume comment threads giving a pretty good signal.
Quotation can be done manually and this is usually sifficient for a low volume system. Making it possible to quote and directly reply to a specific comment encourages discussion and is a expected feature in a good commenting system.
Avatars and signatures should be kept to a minimum to avoid cluttering the commenting system. Many users like these features and they can visually enhance the experience for a reader, making it easy to skim and follow a specific commenter, but if they are allowed to take up more than minimum of space they quickly become a problem only adding noise.
Colors and emoticon are really not needed but can be fun for certain users. Avoid big fonts and blinking text at all costs. Features as such will only be abused and doesn't add anything of value to a commenting system.
Linking makes it very convenient for readers to follow references in comments but do impose other types of problems such as various security problems and link spamming.