The web as a whole can be described as a universe of web service components. A web service can deliver the user interface (a website), and a web service can deliver a programmable application interface (Web API) independent of a range of user interface technologies. A collection of small, independent Web APIs can be grown and evolved in a very reasonable way to yield deep interaction. Web APIs tend to imply client side programming in an AJAX, Flash or Java technology (alternatives may include XForms or XSLT frames). Client side programming eliminates page refresh for interaction, and enables a Web API architecture when the client browser can directly access one or more Web APIs. In the case of HTML/AJAX, the application can be more scalable when the HTML is static and the dynamic components of each page are completely AJAX for Web Services. This requires that the AJAX pull (HTTP GET) of dynamic or real time information is not heavier than image loading. Achieving deepness Deep interaction is where one will spend a lot of time in depth as opposed to breadth. Organizing for deep interaction is to organize for an open scale application infrastructure. Many small, simple components are always good at achieving such a goal. But perhaps more importantly is a discipline for taking reasonable baby steps through an evolution into the future. Small, independent Web APIs can evolve as an open market for best utility. Friday January 11, 2008 |