Minor rant here (sorry if this offends people). I find it very strange that in a time where people are really pushing for Rich Internet Applications with snappy desktop-app-like-response times, there is a good amount of purposeful slow-down being implemented. I am, of course, talking about things like the accordion effect, the fade in, the fade out, the slow drop down menu. Sometimes I get it; a slow movement helps associate an item with it's origin (you can see where it came from). But most of the time this is not required. Take a drop down menu for example; people understand the drop down menu paradigm, they don't need a slow movement to see where the menu came from - it came from the menu bar item they just hovered over. No clarification needed.
Granted, I am not a typical user. I love using keyboard short cuts. Maybe because I am web developer, this stuff (the web) just makes more sense to me - is more intuitive to me. I am not a huge window-shopper of web sites. If I am on a web site, I am looking for something specific. When I am on a mission, all tweening serves only to keep me from my destination.
So, that's my mini-rant for the day. Probably because of who I am and how I use the web, it makes my rant a moot point... but maybe it is something worth thinking about.
Looking For A New Job?
I agree. Many developers getting into the whole "web 2.0" (gah... buzzwords) do alot of these things due to "cool-factor", and not necessarily for the benefit of user experience or even usability.
I think the biggest hurdle for me is that I am not a typical user. So, I am probably not the best feedback system... but so much of it just seems to be no necessary.
I tend to agree with you, but sometimes giving the user the benefit of the doubt gets you in trouble. They not not seem to know what to do it a lot of cases. I think there has to be a balance between usability and speed. I am like you, I want everything now (fast) but I am also very familiar with it like yourself. But some of the users that I deal with have not clue and need it spelled out. So I try to look for a quick but simple self explanatory way of doing web sites when I am designing.
I absolutely agree. Things like the new spry library and scriptaculous have plenty of pointless effect. Blind up and blind down are not so bad but who on earth will want to "shake" a page element? Reminds me of the widely uses blinking text when it was first popular.
I enjoy unobtrusive animations. They make the experience better for me because I can see where things are going if they move and it feels more natural than an instant change.
I think the key problem with "slow" RIAs is that the animations are just too long. A good rule of thumb that I once heard was that 150ms is the maximum amount of time you should play an transition like a fade, slide, open/close, etc. Often, its even better to make your effect a little quicker than that.
Additionally, developer-oriented applications should have the ability to turn animations off. I've found that the hardcore geeks tend to get most annoyed at things like this. Like I said, though, I like them. You just have to achieve the correct balance to make them usable too.
Like most geeks I don't love animations, but I will defend the "shake" animation. good use for it is when you submit a form and don't notice that a little red message appeared at the top saying "invalid email" (or whatever). Shake the message for 150 ms and your eye will be drawn to the movement. I don't use these effects so I'm not saying there isn't a better solution (haven't thought it through), but just wanted to mention that there might be use cases for "shake" to draw attention to a specific page element that the user otherwise might not have noticed.
Another use might be if you were using FDS to simulate an IM style app and wanted to notify the user that a message had just come in by shaking the box with the message or something.
Just my 2c
reminds me of a book I once browsed, something like "how to build really annoying websites"
Agreed. Unobtrusive ones are nice. They do lend to a good experience. People just get out of hand sometimes. One of the ones that bothers me the most is the whole film-strip content; where the entire side scroll left and right depending on what nav item is clicked. I don't know who enjoys that one!
I'm very much in the "don't slow me down :@" camp, but as has been said, transitions are /very/ useful for indicating an action to normal users.
It doesn't need to be a comprimise/balance issue though - you can have both!
One of the things I like about jQuery is that it lets you easily control the speed of effects - the animation functions have a speed argument that controls how fast it occurs.
Store that as a global preference, and then 'power users' can have things happen almost instantly, whilst regular users can have it at half a second or so, and everyone wins. :)
Yeah, jQuery is very cool that way. I have found that 250 ms seems to be a really nice time for most things.