Agile Ajax

AJAX and the Network Effect

Via Ajaxian, Coach Wei over at AjaxWorld Magazine has an article expressing reservations about AJAX and what might hinder it's adoption:

1. 10% browsers have Javascript support turned off (see statistics at http://www.w3schools.com/browsers/browsers_stats.asp). It means that 10% users can not access Ajax-based web sites or applications. This is definitely a problem for Ajax.

[...]

2. Taking the issue a little further, let's talk about accessibility. Plain HTML is fairly good at this because most browsers take good care of accessibility. Most Ajax applications use Ajax widgets that may or may not support accessibility. For example, a lot of Ajax toolkits don't have support keyboard navigation (mouse-less operation), which is a key requirement for a lot of operational applications. Does anybody know the capability of accessibility support from some of the leading Ajax toolkits such as Dojo, Yahoo UI toolkit and GWT?

Let's take these objections each in turn. First, who are these 10% that have Javascript turned off, and should we care? If Javascript is turned off (as long as that's an option in the browser), that's the end of the conversation. The "J" in AJAX stands for "JavaScript." Rather than have AJAX applications degrade gracefully into some old-browser dottage, as Coach Wei suggests, I think the Network Effect is the thing to bank on here. From the Wikipedia:

The network effect is a characteristic that causes a good or service to have a value to a potential customer dependent on the number of customers already owning that good or using that service.

One consequence of a network effect is that the purchase of a good by one individual indirectly benefits others who own the good - for example by purchasing a telephone a person makes other telephones more useful. This type of side-effect in a transaction is known as an externality in economics, and externalities arising from network effects are known as network externalities. The resulting bandwagon effect is an example of a positive feedback loop.

All of those Web 2.0 collaborative apps will drive people to upgrade their browsers and turn on Javascript. I think it was bold of Google to determine they were not going to knuckle under and support any old browsers in their AJAX'ified applications. If you're big enough, people will upgrade just to use your product.

If you really do need AJAX to degrade gracefully, I think the place to do that is in the framework, i.e. write your code and let the framework provide the code to go all the way from full AJAX to nasty postback. No framework does that right now, but it's an opportunity that frameworks like Echo2 are poised to fill.

On point 2, again Echo2 (am I repeating myself here?) does have a facility for handling events such as focus, blur, keypress, etc. I don't see why these things couldn't be fleshed out an built into most AJAX frameworks.

Frankly, though, I don't see either of these two issues as show stoppers or major stumbling blocks for AJAX. That ship has already sailed, as we're seeing from the adoption of AJAX in ecommerce and web 2.0 sites.

Topics:

Leave a comment

Powered by WP Hashcash

About Pathfinder

  • We design and build extraordinary applications for companies looking to make the next great idea a reality.
  • learn more

Topics

WordPress

Comments about this site: info@pathf.com