Wednesday, June 08, 2005

Practice what you preach AJAX

Backbase's first websites were plain HTML. People asked us why we weren't using our own technology on our website. Good question. It should be possible to build a very nice website using our AJAX/RIA toolkit: AJAX shouldn't be just for web applications.

But people are never satisfied :-). A couple of months ago we redid our website using our own technology. And now some people say it looks like a Flash site and that it's an example of where AJAX should not go. So maybe it's good to tell a bit more about our considerations.

By the way: we are not against Flash, but people frequently make the comparison between Flash and AJAX as the main Rich Internet Application (RIA) technology options.

We wanted the site:
  • to be a technology showcase with a wow-factor
  • to load faster and be more responsive than a Flash site
  • to be usable and efficient
  • to have both a web-feel and an application-feel
  • to work like a typical website (e.g. back-button support)

a usable showcase

We thought: if we use our software on our own website, why not make it into a showcase. If people arrive on our home page they should clearly see the difference with 'regular' web sites. At the same time it shouldn't be a demo for the sake of being a demo: people come to our site to learn about our software, about our company, they want to download software, etc. This should be as easy as on other websites, if not easier. Of course, we also want to show that AJAX is faster and more responsive than other technologies such as Flash and Java, and our site should be a prime example.

information architecture

In general we tried to make the site more flexible, and less page oriented. For example, for almost all forms we are using in-browser pop-up windows. To display commonly used information we've used 'drawers', or basically tabs that fold out when you click on them: we use it for demos, downloads, and contact information. At the same time we have a fairly hierachical information structure: almost every piece of content is living somewhere in this structure. We have also tried to highlight clearly where the user is in the hierarchical structure. These hierarchical pieces of information are also available through deep linking, e.g. www.backbase.com/go/products_overview.php.

the wow-factor

To create the wow-factor, we decided to use many graphics and many animations. Both make the site more polished and more Flash-like, but graphics increase the download size and animation can be annoying. So we compromised a bit on the quality of the graphics and used very high compression. And for animation, we took a good look at operating systems such as MacOS X and Windows XP, and tried to design useful animations. These animations typically give feedback to the user about what is happening on the screen: for example, the main menu opens with a transition so people can see what's happening.

web-feel or application-feel?

Some GUI toolkits are only capable of creating desktop-like interfaces, which is not ideal for a content-rich website. You can also create application-like interfaces with Backbase (we will launch a desktop-like forum, and a desktop-demo soon), but it's just one of the options. Some desktop features can be useful though. For example: we've included pop-up windows on our site, and a tree view for the tertiary navigation in the documentation section. But for the rest we've focused on a web-feeling, for example by having 1 scroll bar to scroll the entire 'page'. In desktop applications you typically scroll only 1 panel (similar to using frames).

utility

People expect certain basic functionality when they are using a web page. They want to be able to create bookmarks, or forward a link to a friend. People who use an old browser, screen reader, or a mobile browser expect to get access to the content. The back- and forward buttons should work. This site should be indexed by search engines, such as Google. We needed some tricks, but we now got most of this working, although bookmarks are still not easy enough: we have to improve this.

performance

One objective which is not so difficult to achieve is to create a better performing site than comparable Flash sites. First of all the initial download time: incremental loading ensures that you don't have to load all files at once, you just load it when you need it. Of course, the images make our home page fairly large, but still significantly smaller than many Flash sites. Then responsiveness: the Backbase engine is optimized for performance so this should work pretty fine. Downloading additional information is quick because you only load the new information, and not an entire new page.

does it work?

Based on the feedback we get it appears that the majority of people enjoy using our site. Nevertheless, many people are sceptical at first, and are only convinced when they've tested all aspects of the site. This makes us extremely sensitive to problems and criticism, because we want to convince people that AJAX-powered sites can be both more usable and more fun. So if you have feedback: webteam at backbase.com, and we usually respond quickly.

PS. I'm planning to write some more about the technology behind Backbase.com, so if you have requests, let me know...

1 Comments:

Blogger Ryan Brooks said...

I had some thoughts that I thought I'd like to outline on my site as well: ryanbrooks.net/?p=69

10:44 AM  

Post a Comment

<< Home