State of the Discussion
One of the great ongoing problems in blog design is how to present recent additions – posts and comments – in a way that allow the readers to follow what is happening across multiple posts and multiple threads within those posts’ comments. Designers have tried many approaches: numbered comments, threaded (nested) comments, recent comment sidebars, in-reply-to navigation links, comment excerpts, and more, all assembled in various fashion. In some cases it’s probably a lost cause. Lawyers, Guns & Money comes to mind, with multiple posts per day most receiving hundreds of comments.
The new version of Ordinary Times includes a variety of such things. Posts shown on the front page include a field in the upper left corner of the accompanying image with the current comment count. Down near the bottom of the left sidebar is a widget (labeled “Ordinary Content”) that shows popular posts, recent posts, or recent comments. The right sidebar includes a different recent comments widget. All of these have strengths and weaknesses. None of them provides, at least IMO, a complete view of, for lack of a better term, where the action is.
State of the Discussion is a rather unique full-page comment-oriented view of the current activity. It was originally written by CK MacLeod. Once CK was no longer available to support the package, bits and pieces of it gradually stopped working reliably. Things came to a head during the recent site rebuild. The new version uses a much newer version of WordPress and new theme software, the combination of which completely broke State of the Discussion. CK graciously allowed us to make use of the software as he had left it. Starting from his code, I have a new version of State of the Discussion running. This remainder of this post is a brief introduction to SOTD’s capabilities.
The State of the Discussion page is based on a block of 48 comments, by default the 48 most recent comments. The image below shows a partial view of the page with all of the components that make it up identified by single letters (use “View Image” in your browser for a larger version). What’s missing is the other 45 comments. All of the components are explained in the list after the image. SOTD isn’t for everyone, or every purpose, but it can be very useful in the proper circumstances.
- The pagination bar allows the user to switch between different blocks of comments, 48 at a time. The yellow outline indicates which block is being shown.
- Clicking on one of the non-current links will change the comments included on the page. Clicking on the link labeled “2” will show the 49th to 96th most recent comments.
- Except for the most recent couple of hundred comments, the pagination is a pretty clumsy navigation tool. The Ordinary Times database contains more than 750,000 comments; that’s a lot of 48-comment pages.
- Each post associated with one or more of the 48 comments is identified in the section titled “posts in play”. The color used for the background of the post block will also be used for the background of comments made to that post. There are a limited number of colors available and the color chosen is based on the post’s internal WordPress identification number. In the case of a collision – two posts map to the same background color – the background for the later post will be white. Posts that are fairly recent but have no comments are included at the end of the “list” of posts. (No no-comment posts appear in the picture.)
- Each post block includes the gravatar of the post’s author. As the result of an historical artifact, some posts show a pair of chain “links” instead of the gravatar. The posting category currently called “Ten Second News” used to be called “Linkage”.
- Each post block includes the title of the post, possibly truncated. When the mouse (or other) pointer hovers over the title, truncated titles are expanded to full length after a half-second delay. The delay keeps the layout from twitching every time the pointer happens to sweep over a post title.
- Each post block shows the number of comments that have been made on the post. In the case of a post with no comments, the string “No Comments Yet” appears instead of a number.
- Clicking on the small “+” indicator opens a text box containing the WordPress excerpt associated with the post. In the case of a “linkage” post, the text box contains the entire post content. This can be annoying if the post is long-ish. Originally, linkage posts were never intended to be more than a couple of sentences long. When the text box is open there are “-” indicators that will close the box. There is also a link labeled “View Post” that will take you to the post’s permanent page.
- Each comment gets its own block color-coded to indicate which post it is attached to. The comments appear in chronological order, most recent comments first. How many comments appear in each line depends on how wide the browser window is. (On my desktop, three comments per line. On my phone, only one.)
- The age of each comment is shown in human-friendly form. For newer comments this is the elapsed time since the comment was submitted. For very old comments, the date and time that the comment was submitted is shown. (The oldest comment in the database was posted on Jan 22, 2009, at 8:53 in the evening.) The age is a link; clicking on it should take you to the post’s permanent page, in the comment section, at the location of this comment.
- Comments can be made in reply to other comments, not just the original post. If a comment is such a reply, there is a link identifying the author of that previous comment. Clicking on the link should take you to the post’s permanent page, in the comment section, at the location of that previous comment. When there are lots of comments, especially if they are deeply nested, the positioning may not be entirely accurate. No link appears if the comment is made directly to the original post.
- The comment block includes the gravatar of the comment author. For commenters who are logged in to the site, the e-mail address in their profile information is used to obtain the gravatar. In the case of commenters who are not logged in the mandatory e-mail address required to submit a comment is used. Commenters who do not have a gravatar get a funny cartoon face of some sort. WordPress maintains a record of which funny face was used for which e-mail address, so this will be consistent for a particular user for some amount of time.
- The comment block includes a text box for the comment itself.
- If the software thinks the comment is too long to fit in the text box at its maximum size within the comment block, there will be a “+” indicator. Clicking on that will expand the text box to include the full comment regardless of length. Since the text box is relatively narrow, long comments stretch far down the page. The layout of the following comment blocks is affected, possibly not in the way you expect. When the comment is expanded, the text box includes “-” indicators, one near the top of the box and one near the bottom, that will shrink the displayed text back to the original size.
- Below the author’s gravatar is the author’s name/pseudonym. If the name is underlined, it is a link to the author’s own blog page as specified in the comment submission form.
- Again in the case of comments too long to fit in the default text box, there is an “[…]” indicator. Clicking on that goes to the post’s permanent page, in the comments section, at the location of the comment. Yes, that’s the same function provided by the comment’s age. But short comments that fit in the text box don’t have this link added.
- This small icon is a link to an archive of all of the comment author’s comments on this particular post.
- This small icon is a link to an archive of all of the comment author’s comments on all posts. This may be… large. If it is too large, the archive is broken up into multiple pages.
- Each comment block includes the title of the post it is associated with. The title is a link that goes to the post’s permanent page, positioned at the top of the page.
Ah. It’s nice to have that back. You did great work bringing it over. (And all props to CK for the original code.)Report
This is awesome.
Thank you!Report
Well done, sir.Report
Yay!Report
Thanks you, Michael.Report