Jeffrey Veen

Is Ajax ready for prime time?

Yahoo has launched a redesign of their homepage recently, making ambitious use of Ajax-inspired design techniques and technologies. As Dan Saffer noted on the Adaptive Path blog, "People like my parents, who have never used Google Maps or shopped at The Gap online, much less used hipster sites like Flickr, will now be exposed to what can now be done online."

This feels like a relatively big step in the evolution of what is possible to achieve with web interfaces. Not that these simple interactions and browser-based technologies are particularly new - the effects on the Yahoo! page could have been produced years ago. Rather, it will help a far broader set of people become accustomed to a new set of expectations for the sites they use every day. (Well, unless they use Safari. Yahoo is still serving the old home page for those users.)

Perhaps more interesting, though, is the technological precedent being set. Much like Doug Bowman's standards-based redesign of Wired News years ago, Ajax at Yahoo may signal to conservative IT managers that it's finally ok to loosen the reigns a bit. This technology is in the hands of the majority of users. Let's use it!

It can be so frustrating for designers trying to push an agenda of simplicity and ease of use to be thwarted by developers unwilling to experiment with what's possible today. Of course, the converse is just as true - slow-adopting designers can drag even the most innovative team down. The fact is, a rational process is driven more by personality and emotion than most of us ever acknowledge.

I saw this play out recently at ifilm.com. I'd been using their Ajax-enabled single screen registration interface as an example of excellent design. See the video below for an example of how the system would query the database to see if a username was taken without having to ever leave the page. So nice...

However, returning a few weeks ago, I found the interactive parts all stripped out; ifilm was now sporting standard click-and-navigate style error checking.

I asked a friend who works there what had happened. Why had they taken the efficient and delightful interface away? "An engineer was concerned with performance - too many database hits."

Sigh. I'm sure that developer was entirely right. I'm sure the better user experience was more expensive. But when balancing user needs with business goals and technological constraints, priorities need to be set in a collaborative and holistic way. It's something I try to keep in mind whenever I find myself being obstinate.


This entry was written by Jeffrey Veen and posted 19 July 2006 at 11:18 AM. It was filed under Technology, Web Design.

Comments
1. On 19 July 2006 at 12:11 PM Dale Cruse wrote:

Good post. There are so many times these days where we want to stick AJAX into a project whether it needs it or not. I believe many of us need to take a deep breath and really consider whether the needs of the project call for it.

2. On 19 July 2006 at 12:13 PM Jason wrote:

It was truly a bummer when that came down. It was one of the first things I'd managed to push out the door at IFILM that I thought was truly and uniquely helpful and I really appreciate your taking notice. Almost as much as I appreciate the irony of your hosting a video of it on YouTube! =)

3. On 19 July 2006 at 12:22 PM Adrian wrote:

Hi Jeff,

There's a transactional aspect to this that was not accounted for, which is the main reason I decided to kill it for the time being. It's possible for a user to get the ok on a username and submit only to find out that the name had been taken in the interim period between the ok and the submit. We will probably take another crack at this at some point. P.S. You could have uploaded that clip at ifilm ;)

4. On 19 July 2006 at 1:14 PM Michal Migurski wrote:

The race condition is a good point. A check for a name's existence and its reservation should be an atomic operation. It doesn't matter all that much for choosing a username (i.e., who cares?), but it's interesting to compare this to a more sensitive application like online ticket sales. Ticketmaster jumps through a lot of hoops to duplicate the general experience of waiting in line on their site. They have high-demand periods where your search results may become unavailable minutes or seconds later, so they seem to "hold" them for you for a given period of time. The page includes text that tells you seats are being held, and sets expectations for how long you have until they're given to someone else.

This comment is in no way meant to praise the heartless, awful corporation, ticketmaster.

5. On 19 July 2006 at 3:18 PM Andrew wrote:

I agree with Mike here: in this case, who cares? The designed behavior is likely to be especially helpful to users in most cases, and to require a slightly embarassing "oops, we thought that name was available, but it's not" message for a tiny minority.

It's great that Adrian and Jason both commented here. I very often hear things from engineers voiced the way Adrian does here: "It's possible for..." Sure it's theoretically *possible*, but has it actually happened? How often? How many new user accounts were lost? How much work do you have to go through to even repro this bug in testing?

Identifying edge-cases is a skill I count on from developers I work with; it's not easy, and I'm not trying to dismiss a legitimate issue out of hand here. But where Mike's example shows how UI behavior can legitimately impact business, this login example just doesn't.

6. On 19 July 2006 at 3:56 PM Adrian wrote:

I agree there the race condition here isn't that bad (although my experience tells me 'theoretically possible' equals 'it will happen'), but the more important part is, that case has to be handled, which meant more work. Along with other bugs with it that kept regressing, I decided to move on in the interests of time.

7. On 19 July 2006 at 5:40 PM soxiam wrote:

But isn't the "simplicity" almost always the right "agenda" to push? Particularly on a portal's home page that tries to accomodate for as many audience as Yahoo! does and as much content they try to cram, I for one want more simplicity not less. AJAX has its own place on the web, but I don't think Yahoo! home page is a right match --- not in its current incarnation.

8. On 20 July 2006 at 1:11 AM David Mantripp wrote:

Jeff, I'm sure you know about this, but there is at least one absolutely fantastic example of Ajax being used in a real-life production environment, with a totally non-geek audience, and which saves users an enormous amount of time. immo.search (http://immo.search.ch) is a real-estate aggregator / explorer for Switzerland. It has realtime display of selected properties on cartographic or image maps, scaleable of course, searching from lists on by area, and lots of other time saving devices. It is extremely intuitive (I've watched technophobes happily using it imeediately). It is only in French & German, but you'll get the gist.

This is most certainly prime time. And it couldn't be done without Ajax.

9. On 20 July 2006 at 7:11 AM sms wrote:

Hi Jeff,

because of this, developers need to provide fallback options for users on other platforms or browsers, as most methods of Ajax implementation rely on features only present in desktop graphical browsers.

10. On 20 July 2006 at 2:53 PM pwb wrote:

I don't think the ifilm user registration is an example of a good place to use Ajax. User registration is a one-time thing. Ajax should be reserved for repetitive situations where there is genuine efficiency to be gained. It's over-kill for user registration, imo, and will just make the site harder to maintain and keep bug free.

11. On 20 July 2006 at 4:17 PM veen wrote:

pwb,

I disagree. The registration at ifilm made signing up for the service way easier than it is now. And I'm sure customer acquisition is a high priority for that site's business goals. I'm sure you could make a strong case for investing in that particular interface.

12. On 22 July 2006 at 11:23 AM Dirk Karl Maßat wrote:

great site with good look and information...i like it

13. On 23 July 2006 at 9:06 AM Ian Clifton wrote:

pwb,

I also disagree. Registration is often the first experience a user has, so simplicity and efficiency will give the user a good impression right from the start. Besides, Ajax is extremely easy to implement, so I think the developer time is worth the gains in user experience.

As far as the Yahoo page goes... I think their design is far too cluttered, and I definitely prefer the google homepage.

14. On 1 August 2006 at 2:26 PM Alok Jain wrote:

Good article, I agree AJAX helps improve User experience ..

I have one problem with current application of AJAX, - Accessibility .. I don't see sandards coming out around AJAX which keeps things accesible.

In example you shared, the form validation is doen on the fly, how does that get translated to someone relying on screen reader? It's both coding and Interaction design issue..

Regards
Alok Jain

Currently:

() More...

About Me

Bio: Jeffrey Veen
Book: "The Art & Science of Web Design"
Book: "HotWired Style: Principles For Building Smart Web Sites"
Work: My LinkedIn Profile
Travel: China, Tuscany, Kayaking in Baja, Touring Costa Rica, Studying Theater in London

Popular Posts

» Making a Better Open Source CMS
» Seven Steps to Better Presentations
» A Contrast in Urban Design
» IA Jargon Watch
» On Writing Short
» Pain and Cycling

Recent Photos


XML Feeds

This XML Button links to a feed you can subscribe to. Subscribe to my site
Click the link above to be notified automatically every time I add a new post.

Creative Commons License