Nine Tips for Designing Rich Internet Applications
 
Recently I was asked to provide input into a presentation. 
The question was asked, if you were going to provide some 
quick basic guidelines for designing rich applications what 
would they be.

Here were the nine thoughts as they originally came to my 
head.


1) Make it directly interactive

Instead of page to page interactions think direct 
interaction. Use in context editing as much as possible. 
Use drag and drop only where it makes sense. Barring a 
selection model, put tools as close to the objects being e
dited as possible. Cooper states it as "Where there is 
output, let there be input."


2) Make it inviting

Use hover to invite users to the next level of 
interaction. If the interface responds well to 
light events (like hover) it can be used to entice 
the user to interact.


3) Use lightweight, in-context popups instead 
of page transitions where possible

Although they will eventually get over-used, 
lightweight popups can be your friend. Think of 
them as annexed areas for your page.


4) Use real-estate creatively

As mentioned popups help. But slide outs have 
long been allies in desktop tools, they can be 
an aid in the world of the web.


5) Cross page boundaries reluctantly

Think of a page switch as a context boundary 
that the user may or may not want to cross. 
Think of it as a place that many of your users 
will lose interest and no longer follow you.


6) Create a light footprint

Make it extremely easy to interact. Rating movies 
or news with just a click on a star with no-refresh 
is awesome. Checking hostnames without leaving the 
page is an excellent way to keep a user engaged. 
Shopping by clicks that only add to a container on 
the page (instead of going to a new page) are like 
impulse aisles in the grocery store.


7) Think of your interactions as storyboards

As the designer you are the director. Think about 
the event states as acts in a play and your 
interface elements as actors. Get them all 
moving towards telling your story. Putting the 
frames down on a storyboard is a great way to rehearse 
your script. Think of the interesting moments 
as opportunities for engagement.


8) Communicate transitions

Keeping the user informed during lightweight 
operations (that don't leave the page) with 
spinning wheels, busy or progress indicators 
keep the user engaged with a living page.


9) Think in objects

Instead of thinking about content and pages, 
think about Rich Internet Objects. The travel 
log in Yahoo!'s Trip Planner is a good example. 
Once created it can be searched for or shared. 
This will help you create more interactive applications 
and make the user's work recognizable and sharable.

These are not exhaustive. Even as I go to publish 
this I can think of other tips to include... but 
I will resist adding to the list. Perhaps you have 
some tips/principles that have helped you solve 
design challenges?

Posted by Bill Scott...