Few companies adopting Web 2.0 see themselves as living dangerously. But the reality is, Ajax, mashups and REST first appeared in the wilds of the Internet, where it's survival of the fittest and new technologies fight to stand out from the pack. Niceties like security might come later.
Web 2.0 and RIA (Rich Internet Applications) will dramatically change your infrastructure in terms of monitoring, management, deployment and availability. The load on both network and back-end servers could become crushing. Security is too often an afterthought, and two of IT's safety nets--standards and interoperability testing--are sorely lacking. You also may find yourself unable to analyze Web site usage by established methods.
Still, none of this seems to be hindering deployment. Close to half of developers answering Evans Data's Spring 2006 Web Services Development Survey say they're already working with Ajax, a key component of the Web 2.0 architecture, or plan to do so in the coming year. Use of REST (Representational State Transfer), a simple, URI-based service architectural model, is up as well: The Evans survey found a 37 percent increase in respondents implementing or considering REST, with one out of four seeing REST-based Web services as a simpler alternative to SOAP-based services.
Although Web 2.0 technologies can take advantage of SOAP (Simple Object Access Protocol) and your SOA infrastructure, most do not. Why? Because the developers who blazed the way rarely concerned themselves with details like management, security, scalability or support. They were in it for the thrill of the hunt.
AJAX Vs. SOAP
SOAP has been the primary mechanism for implementing services in the enterprise for the past several years; it's well understood, and myriad products exist to ensure scalable, manageable and secure SOAP-based applications.
Click to enlarge in another window
Mashups Provide The Big Picture
Click to enlarge in another window
None of this is true right now for Ajax, mashups and REST, and that's making vendors--and smart enterprise IT groups--nervous. We suspect this is the impetus behind industry initiatives such as the OpenAJAX Alliance, a consortium involving leading ISVs including Adobe, BEA Systems, IBM and Sun Microsystems, that's dedicated to interoperability.
Unfortunately, there are no standards, other than SOAP and WSDL (Web Services Description Language), on which these vendors can base new Web 2.0 products, and standards groups like OASIS and W3C have yet to step up to the plate. When it comes to putting it all together and building that killer mashup for users, there's still a lot of hand-coding required.
No one disputes that, done right, information-rich Web 2.0 applications can increase end-user productivity. But to take full advantage, services must exist, and that means a whole lot of work for IT to architect, implement, deploy, manage and secure a scalable service-oriented infrastructure.
Building interfaces using a drag-and-drop paradigm is still a dream, and usually not a pleasant one.
Take mashups. Early adopters have thus far had precious few tools available. IBM has taken the lead in this area with its Enterprise Mashup tools, announced in June, and BEA is not far behind, with an array of new Web 2.0-inspired tools--including a mashup-focused software infrastructure--set to see daylight in 2007.
When the buzz around a new technology reaches a dull roar, the temptation for vendors to rush out enabling products can be irresistible. IBM's impressive-sounding "Enterprise Mashup System," now in early adoption phase, really boils down to support for building Ajax-based interfaces using Eclipse development tools. Too bad Ajax isn't ready for prime time use in the enterprise.
Yes, you heard us right. Ajax is a great technology and certainly opens the browser up to a wider array of functionality than has previously been available in a thin client. And, the OpenAJAX Alliance is moving to define a single declarative markup language, which would essentially provide a standards-like API for developers.
That said, right now it's open season on Ajax APIs and implementations--IT is finding it nearly impossible to migrate from one Ajax toolkit to another, and interoperability is practically unheard of.
Further complicating matters, few shops have taken into account the network and the server-side impact of Ajax on the enterprise infrastructure. Poorly tuned Web servers can be brought to their knees by just a few Ajax-enabled users. Hundreds may bring your systems crashing to the ground; at the very least, Ajax will hog precious server and network resources needed by mission-critical systems.
Desktop systems are often the last to be upgraded in the enterprise, and this reality may defeat the very purpose of moving ahead with Ajax-based apps. Although mashups and other information-aggregation technology may indeed improve employee productivity by reducing the number of pages required to display information, if the load time on that single page increases beyond the time it would have taken to load several individual pages, you haven't gained a thing.
Until there's at least a modicum of a standard markup language and the impact of rich interfaces on network and server resources is better understood, early Ajax adopters are gambling with the operational wellbeing of their infrastructures. Exercise caution. Implementing a few closely controlled pilots is the only way to understand whether your infrastructure and desktops can handle the load or will need to be upgraded.