The current trend is that more and more of the web applications move a lot of their logic to the browser. This is what I predicted a long time ago already. I think that soon most of the application will run inside the browser and will only make callbacks to the server for storing and retrieving data. In fact this is basically what Gmail does.
It is important to make a distinction between two kinds of dynamic websites:
- Single-Page Interfaces (SPIs). These are the web applications that were built to replace the traditional desktop applications. You go to a single page and do not leave it for as long as you use the application. Examples of this are Gmail, the new Yahoo Mail, and many online feed readers, like Google Reader.
The real revolution is happening with the SPI web applications. These applications have important implications however and pose a number of problems:
- Current SPIs assume an internet connection at all times. This is unrealistic and will be unrealistic for some time. So there should be some means to download data to the browser, change it and push it back to the server when there is internet connectivity again. Dojo's storage framework makes this browser-side storage of data possible.
- Where is the user's data stored? Currently most web application providers store the user's data on their servers. The question is, do users want this? At least it should be possible to move this data around, from the service to the user, but also between services I think. This is an issue not currently addressed, and I will talk about this more in a future post.
To be continued...