What are the limiting factors for ubiquitous adoption of mash-ups?
Limiting factor 1 - Can you add business value by mashing ? Mashups sit on the shoulders of others. The components of the mashup are real, substantial applications by themselves. Ebay is a business (as in Ebay mashed with Yahoo). Craigslist is a business (as in Craigslist mashed with Google.) To be a Mashup as Business, the new business must add value beyond the value created by the sources. That added value could be new proprietary data or new proprietary logic or both. Merely joining two existing sources doesn’t add enough value to build a business. It’s like buying hard disks, CPUs, and motherboards at Frys and trying to be in the computer business. Mere assembly of components is convenient, but not worth much. This is the challenge in mashing together consumer services. Can you add enough value? Have the sources left enough room for you to add value? If you have a proprietary new data source, you could integrate with other data sources and build a new experience.
Limiting factor 2 - Can build real applications? Developing a proprietary data source is a high cost route to differentiation. The lower cost, tried and true route is proprietary process or application logic. Integrate 4-5 web sites into a proprietary consumer experience. This sounds straightforward. But there are two key problems. First, you can’t do this integration easily with browser-based technologies. Rich clients running on consumer PC's have their limitations. Tracking long-running transactions is just too much bookkeeping to do client side. Even if you did suffer the pain of doing all this in the browser, a large part of the source code to your application logic is now potentially downloaded by every user everywhere in the world!
Limiting factor 3 - Consumer processes are simple. OK, even with these problems still you’ve decided to build a new consumer application mashing together four sites with your own application logic. The next problem is the inherent triviality of most consumer processes. Can you imagine four sites you visit where what you do on one depends on the results of the prior sites? That dependency is called process.