The primary reason for discussion2 was to get beyond the pain in the ass that is navigating large discussion threads on Slashdot. You know the problem: once threads get deep, you have to click repeatedly, waiting for tabs to load. Or even when you encounter a long comment, you have to wait to get the full comment text.
Cool Things D2 Does Now
- Allows you to change your threshold, open and close threads, and expand long comments in place, without ever loading a new page.
- Allows you to moderate a comment without clicking a save-button that loses your place in a thread.
- A new, more intuitive user interface that more clearly displays the nature of comment thresholds.
- Vastly Improved threaded view that allows you to see more of the discussion in less space, without clutter.
Some items on the TODO list (more or less in order of priority)
- Make it Progressive - Right now D2 simply gets all the comments in a discussion. This sucks. We need to write a task to retrieve only appropriate comments. So if you are at Score:4 threshold, we don't bother retrieving the full text of all comments at Score:-1. And even better, if someone moderates or posts a comment, we need to update the page you are reading to reflect those changes. Again, the goal here is that once you load a page, you don't need to close it until you are done with the discussion. This actually has MANY subtle problems, like how do you notify a user when a thread 10 pages up has been replied to.
- In-Place Posting You should be able to post a comment without reloading a page. Right now you can just open a tab, but then you are looking at a stale discussion. This isn't that hard either- especially once we finish #1. Just need to open the reply page in a div, and when you save, make sure that the new comment is properly retrieved and inserted into the thread. But there's some subtle stuff here like how to handle previews. We need to change some of our error handling- the current system uses previews as an opportunity to warn readers about things that are "Wrong" about their comment. We need to figure out how to do that without launching new pages. It's not hard, but it'll take some time.
- Smooth out the UI there are a lot of parts to this problem. Right now the threshold change is buttons but it should actually be draggable, I'd like the widget to toggle from the top to the side, but need to build a horizontal version of the widget. The expansion/contraction of comments and threads have weird functionality that could be improved- for example there is a difference between expanding a comment and expanding a thread. And there's new concepts like expanding a child vs expanding an entire thread vs expanding "Siblings" vs expanding hidden children vs visible children. These are very interesting user interface questions that we'll start working out soon.
- Rethink What Old Functionality By this I primarily mean discussion filters and ordering. By default D2 uses a thread ordered, chronological display. The old system had many other sort modes, but I'm not how sure how effective these are once threaded. So I may simply leave the old system in place for users who want to see a flat discussion ignorant of threads ordered by date or score. Since this is only a tiny percentage of users, I figure it can wait.
Already around 13,000 of you are using Discussion2. We're a ways off from flipping a switch to make it the default for everyone, but it's already substantially better for users with fast computers and Firefox. Hopefully in a few more weeks it will be good enough for everyone. Thanks for the help along the way. We hope you like the new system... I sure do. And mad props to Nate & Pudge for their work on this...