Web 2.0 has opened the door for a new breed of web applications. Mashups, like Wikis, blogs and social networks are a part of Web 2.0 but mashups continues to grow faster.A mashup is an application that combines information from different sources and integrate them to deliver content for a specific purpose or a new functionality. The purpose of mashups are to create a new class of service or functionality that is convenient, more user specific and generate new business opportunities. For instance, a mashup application can combine service from a mapping application and apparel store to locate all the branches of the store in a city. There is a huge possibility for mashups in today’s world. Forrester Research predicts that mashups will be a $682 million industry in the next 5 years. Mashup promises cost effective solution that add a great value both at user as well as at enterprise level. Few more examples of mashup are Amazon Light and ActorTracker. Amazon Light contains listings of products sold by Amazon.com and combines them with data from Google, Yahoo, Del.icio.us, Blogger and others. ActorTracker combines Amazon, eBay, and other movie data. BizRate, PriceGrabber, MySimon, and Google's Froogle used combinations of business-to-business(b2b) technologies.
Architecturally, a mashup is comprised of three layers:-
Datasources/Content Providerslayer– A mashup application can get data from diversified data sources. It could be a XML feed (RSS/Atom) or by calling external APIs exposed by third parties like Google Maps API, APIs from Microsoft (Virtual Earth), Yahoo (Yahoo Maps), AOL (MapQuest) or Flickr APIs. A detailed list is available at http://www.mashupfeed.com.
Transformation Layer– This layer basically transforms the data by filtering, sorting or by performing any custom operation on the data to create something useful.
Front-End/UIlayer– Mashup is all about creating rich user experience which can be created using tools like Google Mashup Editors or IBM’s Lotus Mashups.
On the other side enterprise mashups are more robust in nature. They can address the features of security and governance. Mashup server provides visual drag-and-drop interface for mashing services together. Common functions like merging, filtering and even custom functions such geocodeing are built into the server toolkit. The mashup server can safely perform and store authentication and authorization information for external services. It can also be connected to the enterprise's own authentication and monitoring toolsets.
A tutorial for creating mashups using GME ishttp://code.google.com/support/bin/answer.py?answer=71042&topic=12044
Few available Mashup editors are:-
·Google Mashup Editor
To me mashups are all about innovation. Services are available, so it is upto an user or an enterprise to mix and match the data or functionality from different sources and create applications that adds value. IBM is leading the mashup race with wide range of tools and editor. More information about mashups are available athttp://w3-03.ibm.com/software/developers/page/1117