Monday, January 29, 2007

WPF/e and usability

WPF/e (or Windows Presentation Foundation everywhere) was released as a CTP in December 2006 and since then I've seen a number of, shall we say, interesting demos across the web showcasing WPF/e's capabilities. I've seen 3D movie pickers, bouncing menu items, movie players, and movie players (did I mention movie players?). Some of these demos present truly compelling improvements in web UX (especially if you choose to ignore the fact that Flash has been delivering these interfaces for years (and yes, I know, the XAML/WPF/e work flow is the real benefit over Flash for Microsoft developers, but that's irrelevant to end user experience)). Some of the demos concern me, though, with animation used in a way all too reminiscent of the early days of Flash.

It may be a good time to refresh ourselves on the appropriate uses of animation on the web (or the desktop with WPF, for that matter), and who better to look to than the king of usability standards, Jakob Nielsen. There is a time and place for animation on the web, and Jakob's guidelines from 1995 remain very true today:

  • Showing continuity in transitions
  • Indicating dimensionality in transitions (such as Zooming)
  • Illustrating change over time
  • Multiplexing the display (such as making an active button glow on mouse over)
  • Enriching graphical representations (such as moving how-to diagrams)
  • Attracting attention (such as briefly highlighting a new message on the screen)

Despite what many developers believe, usability studies show that most people equate animated content with useless content (Nielsen). Like it or not, users have a set of expectations they apply to all sites they visit on the web and if you stray too far from those expectations to introduce your cool new WPF/e interface, users will leave your site frustrated.

So before you start building applications with menus the ripple with each click just because you can, make sure your animation is really adding value to your user's experience. There is no question that WPF/e could open a whole new world of rich cross-platform applications and that telerik will be there to make a new generation of easy to use UI controls. Let's just focus on making applications and controls that are even easier for "normal" users (read: not people reading this blog) and avoid the mistakes we made made with Flash back in the day.