When Ajax attacks: digg's new commenting system

what a digg messAjax solves a lot of problems: it lets you do some cool UI tricks that can make you more efficient when doing a particular task in a web app. But unfortunately for some people, it's not a magic jar of web goodness that you can open up and spread all over your application in hopes of making everything better.

digg just launched their new comments system. The JavaScript involved is pretty cool and slick, but it fails on a usability level. Comments, by their very nature, are meant to foster discussion. Having a comment system that is "threaded"- that is, lets you reply back to specific comments, tend to be a good thing. What digg's done is take a threaded approach and bog it down via excess server calls and an incredible amount of clicking. I've only used it a few minutes, and I've already found myself not caring very much about any particular person's discussion since it takes an extra click just to see what people's reply to an idea is.

Part of why they want to do it this way is to minimize spamming the first comment replies, which makes sense, but really all their current system is doing is getting more people to make more threads and reply less to other people. Think of a closed room where everyone's shouting their opinion as opposed to nicely talking it out. It just takes way too long to dig down and see what people are talking about. Maybe it's just me, but this feels like digg's flunked out of usability 101 here. I could see some improvement if they loaded everything on the client right away so when you clicked, the content would immediately drop down (as opposed to making a new call to the server), but then that defeats the whole purpose of the new system.

The other issue with digg's comments is that, in the past, they've been wholly bloated on the client-side. Nearly unmanageable. When I loaded a popular story in Safari 2 - something with 300+ comments or more - Safari would crawl to a slow painful death while I waited for it to crunch all the HTML and JavaScript for all those comments. (Interestingly enough, as soon as I installed the Safari 3 beta, I had zero issues with this- I could load 500+ comments with ease.) Traditionally breaking up the comments into separate Ajax calls seems like it would be a server-side nightmare to handle, but they're likely banking on the fact that people aren't going to drill down and view every comment on the page. In other words: they're banking on the fact that people read less comments. There are plenty of stories where I'm interesting in hearing the debate between diggers- I've sat through stories of 200-300+ comments and at least glanced through every one of them. Imagine doing that now... it could require 30 (or more!) clicks per page. When was the last time a website required clicks in the double digits to read the page?

Even worse, I see that they break up their heavily-commented pages with something like "Show 101 - 151 of 250 discussions". It's pagination for their comments. It's a pain, and it's something that I've read the digg developers (and users) had wanted to avoid. If you're going to paginate it, why don't you just use the old-school method, slap some pagination on it, and be done with it. The usability will at least be maintained somewhat.

It's more than a decade into the internet. We've had the phrase "content is king" for ages, even beyond the internet. Crazy how someone with the stature of digg can just skip that entirely.