One or two examples are emerging of the use of web services to call up bits of functionality on demand. There's a review this week in Network Computing of DreamFactory Software's rich client plug-in for XML web services: DreamFactory 6.0 Ends Web App Development Nightmares. An application developed with DreamFactory runs in a browser, using plug-in code that's automatically downloaded direct from the vendor's website, along with application-specific code that's stored on the application owner's server (or, for individual use, on their own personal machine). Application building uses DreamFactory's hosted development environment, and is designed to be easy enough for content owners to handle rather than having to rely on highly skilled programmers.
For a simple demonstration of DreamFactory in action, take a look at John McDowell's blog about Embedding Visualization into your own page, and precedingentries. John is CTO of Grand Central, which uses DreamFactory to offer application-building capabilities to its customers. In his blog, he offers a linkmap visualization tool that he's built using DreamFactory, and he shows how to embed it any web page using just a few lines of HTML. "One of the interesting attributes of creating well defined services is how easy it is to distribute the display code and have it completely separate from the business logic," he comments. "Anyone can add this code to their blog and provide a new metaphor for navigating their neighbourhood. As I add more features they will be delivered on demand i.e. no need to update software everything is delivered out of the network."
So here we have the environment provided as a service by DreamFactory; the specific functionality provided as a service by the developer (in this case John); customization of the functionality performed by whoever embeds the code in their web page; and the raw data provided from the target URL. This of course is a very simple demonstration in terms of the input data; DreamFactory is really targeted at working with XML and SOAP web services, so for example it could be used to aggregate multiple web services or even, with additional coding, to join them into a composite process.
The DreamFactory FAQ page has some succinct statements that bring out the simple elegance and flexibility of this very loosely coupled approach to adding flexible functionality to web services resources: "Simply install the product and start using publicly available web services or XML documents ... There is no source code. There is no deployment. Just go to a URL, build the application, and save your changes for worldwide distribution."
DreamFactory is going to be increasingly useful as more and more services emerge that users will want to couple together. It's no wonder that Grand Central as well as salesforce.com have become early partners of DreamFactory, since they're already in the business of hosted application services. But they're not isolated examples, and one of the most interesting trends going on at the moment is the emergence of APIs and XML web services as a kind of mass market phenomenon in the world of weblogs. We're already seeing growing mainstream adoption of RSS feeds for content syndication (CMP became the latest tech news publisher to bow to the inevitable and introduce RSS feeds, including one specific to the topic of web services, which we've added to the Loosely Coupled news headlines page).
Less noticed, but just as significant, is the emergence of widget syndication: the unbundling of functional services to make them available using web services APIs. An interesting example to watch will be leading weblog software vendor Six Apart's planned TypeKey service, as reported by internetnews.com in Six Apart Trains Guns on 'Comment Spam'. This is a much-needed comments capability for weblogs, which "would also be available for competing blog vendors" as well as authors of other third-party commercial applications.
I find it very encouraging to see more and more of these shareable services emerging at the same time as tools like DreamFactory are coming on the scene to make it easier to assemble them together. With supply turned on and enablement in place, it just needs users to start generating demand and the market will be ready to take off.