As the world wide web transforms from a vehicle of information dissemination and e-commerce transactions into a writable nexus of human collaboration, the Web 2.0 technologies at the forefront of the tranformation may be seen as special cases of a more general shift in the conceptual application model of the web.
The classic 3-tier model has the web browser and OS on a thin client tier, the traditional server tier offerings for data persistence and workflow or business process managment, and a fat middle tierof custom JEE code. The custom middle tier code has two responsibilities. It has to invoke allthe server tier API calls necessary to perform business transactions, persist data and the like. But frankly, the server tier has received work for decades, so its scalable, robust and has well-definedeasy to use APIs. So, the bulk of the work in today's web applications consists of back-filling for theunderpowered thin client tier. To achieve a single business transaction, we have to do a complicated juggling act of the multiple pages, some only conditionally presented, each collecting some small amountof information that has to be validated, and the results aggregated until the transaction is ready.
The Web 2.0 application model is essentially a 2-tier model. It was a little hard to recognize that thistransition was happening in the early days when Web 2.0 just meant blogs and wikis. At that time, Web 2.0just meant content democratization, which is the idea that non-technical users could create andshare content on the web without needing to involve web application programmers. This was quiterightly viewed as a revolutionary breakthrough because it did for the web what the word processor did forthe personal computer. But if you remember that it takes two points to make a line, and then look atat the history of the personal computer, it's trajectory as a revolution did not become evident until the second killer application of computing, the spreadsheet. This application created what we callprocess democratization. This is the idea that non-technical users, or semi-programmers,could define how computing power would be dispensed to solve problems without needing to involve high-endapplication programmers. This was revolutionary because the non-technical users who were enabled to definetheir own processes were closer to the business problems and also far more numerous. The same thing isnow happening on the web, and it is the next phase of Web 2.0.
The Web 2.0 server tier is smarter than it used to be, exposing its capabilities directly to the Web 2.0 client tier with web services, REST services, or feeds and ATOM publishing.Similarly, the Web 2.0 client tier can connect directly to these services without needing the JEE web developer in the middle. Through AJAX presentational libraries like Dojo and AJAX data interaction libraries like Ubiquity XForms, the client is smart enough to drive not just simple user interfaces, but data validation, conditional user interface presentation, and access to web services throughout the end-user fill experience. It is even smart enough to offer webtop design and deployment experiences for these applications.
In this regard, I would like to draw your attention to the most exciting product addition in the new Lotus Forms 3.5 release. The new product,Lotus Forms Turbo, provides non-technical users with a web experience for the design and deployment of data collection forms and reporting functions.To get an idea of how the non-technical user is enabled, see the new YouTube videos on Lotus Forms Turbo.If a picture is worth a thousand words, these videos are priceless, so I'll stop writing because when you see, you'll know!