by Iain Wilson
We've been doing a fair bit of work recently which could be described under the Web 2.0 banner. While some of the technology is great, you need to take care that your application of it is in the right environment.
To the unitiated Web 2.0 is a notional 'second version' of the web which includes all manner of things - it is not one specific thing. It variously includes (depending on who you talk to) social networking and more user participation on web sites. Technology-wise, it also includes Ajax and that is what we have been doing a bit of.
You can do a lot of things with Ajax but one of the key uses of it is to provide a quicker user interface when someone is interacting with a web page. Traditionally, when you key something into a web page, you have submit the information and wait for the screen to refresh. This can be annoying if you got something wrong, and it can also take quite a while.
Compare that with programs on your PC - when you key in something you normally get an instantaneous response. Well, that is what Ajax can provide - an instantaneous response on a web page.
Sounds good doesn't it? However, what we've found so far is quite interesting. First of all, because people are used to waiting for a response, it is quite disarming to see the screen respond very quickly! In fact, on a couple of occasions we've had to put in artificial delays or fade-ins to make the interface acceptable to our customer.
The second thing is/are search engines. Search engines love to gobble up all the text that is on a page so they know what it is about. Then it can build indexes that include the words on the page. That is how they work, and this immediately suggests a major potential problem at the moment with Ajax. The nature of Ajax pages is that typically they are devoid of much content until the user interacts with the page.
So when the page loads, there is little content for the search engine to index - it only indexes at load time, so it won't see the text delivered from the user response.
So far we've got around this by doing some pre-loading of data as the pages (using Ajax). This has the advantage of giving our client a very good response time when they key data (maybe too fast!), but it is only possible with small amounts of data.
The lesson is therefore, think before you leap into a Web 2.0 world. Given our current operating conditions, you must choose carefully which parts of any site is right for Ajax.comments powered by Disqus