Degradeable AJAX

There's a nice article over at ParticleTree on the Hows and Whys of Degradeable AJAX . The first suggestion they have for doing a really degradeable interface is to do your development with JavaScript turned off.

Now, in today's day and age, I tend to think that folks surfing around without JavaScript should expect their Web experience to be pretty broken. But there may be specialized instances where the target user-population for the app would require this kind of approach.

The Cosmo app at OSAF is a good example of this. The target group for this app is stated to include (and I quote) "pointey-headed Unix admins," and a large fraction of these dudes, clearly, will have JavaScript turned off.

Another good example is mobile platforms. After playing around with a Pocket PC running Windows Mobile , it's clear that JavaScript is only mostly working in the mobile version of Internet Explorer. The most glaring omission, that broke the app I was trying to use, was lack of support for the onclick event listener on normal page elements.

Unless there are compelling reasons, I'm not a huge fan of maintaining multiple competing versions of the same code. Even if you develop a programmatic way to generate both versions from the same base, you still have some amount of tweaking to do, and of course real testing on both platforms.

However, if you know people are going to be using your app with less-than-fully-capable devices, there are a lot of easy things you can do to prepare your app. You can start by -- ugh -- turning off JavaScript.