Web Developer
JavaScript – experience enhancer or dictator
A few days back it nearly ruined both my life and my sanity!
When I first started working as a commercial web developer the first idea that really hit me was the use of JavaScript and AJAX. My first senior developer always ranted on at me about ‘graceful degredation’ and I plodded along, blissfully unaware of the implications of ‘enhancing’ a website using JS.
The main issue that I was missing was that a very very very small percentage of users actually do browse with JavaScript disabled. “WHY WOULD YOU DO THAT?”, I thought. I fought for a long time with the idea that someone would actually purposefully disable a feature which makes browsing 10 times easier.
But then I was introduced to websites that AJAX anything that moves or blinks or even looks at them the wrong way. The PRIME example of this is Facebook. Apparently facebook is the holy grail of social networking sites (do not in any way think that is my opinion, who said twitter?).
There is only one way to see the importance of degrading gracefully – browse Facebook with JavaScript disabled (I use the web developer toolbar for Firefox) or at least try to. NOTHING WORKS. How can such a big site with such a huge user base not support a lack of JavaScript, it’s just bad practice.
Many people will of course jump to the conclusions that I did that JavaScript can only be a good thing and that nobody in their right mind would turn it off. After browsing sites like the online job center Monster, I felt like throwing JavaScript out of a very high building. The AJAX functionality actually destroyed my experience.
So. How do I ensure that all the websites I work on are sure not to cause other users the same pain that I felt that day? Do the JavaScript last. Always make sure that there is a static (well kinda) page which can load and save the day if someone is so sick of JS that they have disabled it. Then use JQuery (thank you John Resig for making all of our lives a LOT easier) to enhance the users experience.
JavaScript enhances the users experience it does NOT dictate the users experience.
| Print article | This entry was posted by Matt on February 18, 2010 at 3:21 pm, and is filed under JavaScript, Web Dev. Follow any responses to this post through RSS 2.0. You can leave a response or trackback from your own site. |
about 5 months ago
It is true – I have constantly thought of disabling good old JS as Matt here has suggested, but too much relies on it. It feels at times like the technology is dictating the content, try searchign a site made in Flash (all I can say is good luck).
I whole-heartedly agree do the simple stuff first, make the site work then look at increasing the user experience with toys like JS and friends. If the experience of using a page gets in the way of absorbing the content then my friends you have failed.