Title: Mashups: The new breed of Web Applications
1Mashups The new breed of Web Applications
2Outline
- The term Mashup
- Mashups Genres
- Technologies behind Mashups
- Emerging Technical and Social Challenges
3History - Information Technology Spend had been
growing nicely
1964 S/360 debuts
1994 Netscape Navigator
2000 Dot-com collapse
1971 First Intel Micro
1981 IBM PC
4Dot.com Collapse - Is it the end?
Just the beginning of a golden age
Innovation
Deployment
The Industrial Revolution
Irruption
Frenzy
Synergy
Maturity
Panic 1797
Age of Steam and Railways
- Formation of Mfg. industry
- Repeal of Corn Laws opening trade
1
1771
1829
Age of Steel, Electricity and Heavy Engineering
Panic 1847
2
- Standards on gauge, time
- Catalog sales companies
- Economies of scale
1829
1873
Depression 1893
Age of Oil, Automobiles and Mass Production
3
- Separation of savings, investment banks
- FDIC, SEC
1920
1875
Age of Information and Telecommunications
4
- Build-out of Interstate highways
- IMF, World Bank, BIS
1974
Crash 1929
1908
Dot.com Collapse
5
Current period of Institutional Adjustment
1971
Source Technological Revolutions and Financial
Capital, Carlota Perez, 2002
5Mashups are
- an exciting genre of interactive Web
applications that - Retrieve content from external data sources
- Create entirely new and innovative services
- Hallmark of the Web 2.0
- Run-time integration
6The term Mashup
- Borrowed from the pop music scene
- Vocal and instrumental sounds from different
source tracks are mixed to form a new mashup
song - An unusual or innovative composition of content
(often from unrelated data sources) - Made for human (rather than computerized)
consumption
7Current Status
From programmableweb.com on 1/12/2006
8What might a Mashup look like?
- The ChicagoCrime.org Web site
- A mapping mashup
- One of the first popular mashups
- Mashes crime data from the Chicago Police
Departments online database with cartography
from Google Maps - The concept and the presentation are simple and
the composition of crime and map data is visually
powerful
9Outline
- The term Mashup
- Mashups Genres
- Technologies behind Mashups
- Emerging Technical and Social Challenges
10Mashups
- A Mashup web site is characterized by the way in
which it spreads roots across the Web - Building upon the content and functionality
retrieved from external data source - Mostly the data source lay outside of the
organizational boundaries
11Mashup Genres
- Mapping mashups
- Video and photo mashups
- Search and Shopping mashups
- News mashups
12Mapping Mashups
- Locational information presented graphically
using maps in a specified context - Google Maps API opened the floodgates mash all
sort of data from nuclear disasters to Bostons
CowParade cows onto maps - Other APIs
- Microsoft (Virtual Earth)
- Yahoo (Yahoo Maps)
- AOL (MapQuest)
13Video and Photo Mashups
- The emergence of photo/video hosting and social
networking sites such as Flickr with APIs and
YouTube has led to a variety of interesting
mashups. - Metadata associated with the hosted images and
videos - Who took the picture
- What it is a picture of
- Where and when it was taken
- So on
14Search and Shopping Mashups
- Exist long before the term Mashup was coined
- Combinations of B2B technologies or
screen-scraping to aggregate comparative price
data - eBay and Amazon have released APIs for
programmatically accessing their content
15News Mashups
- News sources such as BBC and Reuters have used
syndication technologies like RSS and Atom since
2002. - Personalized newspaper by Syndication feed
mashups - Doggdot.us, combines feeds from the
techie-oriented news sources Digg.com,
Slashdot.org and Del.icio.us
16Outline
- The term Mashup
- Mashups Genres
- Technologies behind Mashups
- Emerging Technical and Social Challenges
17The architecture
- A mashup architecture comprimes of 3 logically
and physically disjoint components - API/Content Provider
- Mashup Site
- Clients Web Browser
18API/Content Exposition
- Web Protocols
- REST Services
- SOAP Web Services
- RSS/Atom
- Screen Scraping
19Mashup Site
- Mashup is hosted by a web site
- Mashup logic resides in this site
- Execution is distributed over the web
- The Mashup Site can be implemented and deployed
similarly to traditional Web application
20Client-Side Processing
- Mashed content can be generated directly within
the clients browser through client-side
scripting (JavaScript) or applets. - Rich Internet Applications
- Less overhead on behalf of the mashup server
- Data can be retrieved directly from the content
provider - More seamless user-experience
- Pages can request updates for portions of their
content without having to refresh the entire page - Clients Web Browser is where the application is
rendered graphically and where the user
interaction takes place
21AJAX
- Asynchronous JavaScript and XML
- Web application model rather than a specific
technology - Comprises
- XHTML, CSS and XSL for presentation
- DOM API exposed by API for dynamic display and
interaction - Asynchronous data exchange, XML or JSON data
- JavaScript
- Aims to create a smooth, cohesive Web experience
with reducing server-side overloads
22Web Protocols
- As part of the SOA paradigm, these protocols are
platform neutral to interact with any remote
services - Exchanging XML based messages in general
- Messages are typically conveyed over standard
transports such as HTTP and SMTP
23Web Protocols SOAP
- Simple Object Access Protocol
- Fundamental technology behind Web Services
- SOAP APIs for Web Services described by WSDL
documents - What operations a service expose
- The format for the messages that it accepts
(using XML Schema) - How to address the service
24Web Protocols REST
- Representational State Transfer
- Similar to document-literal style of SOAP
- Identification of resources by URIs
- Supports less operations (POST, GET, PUT, DELETE)
25Screen Scraping
- Scraping is the process of using software tools
to parse and analyze content that was originally
written for human consumption in order to extract
semantic data structures representative of that
information that can be used and manipulated
programmatically.
26Semantic Web and RDF
- To create web infrastructure that augments data
with metadata to give it meaning for automation,
integration, reasoning and re-use - Resource Description Framework (RDF) provides
methodologies to establish syntactic structures
that describe data - RDF allows creation of hierarchical structures of
knowledge that can be searched and formally
reasoned about, ontologies
27Semantic Web and RDF
lives in
lives in
eats?
eats
animalType Carnivore
animalType
Reasoner
animalType
animalType Carnivore
eats?
lives in
lives in
eats
28RSS and ATOM
- XML-based syndication formats
- Syndication implies that a Web site that wants to
distribute content creates an RSS or ATOM
document and registers the document with an RSS
publisher. - RSS/ATOM-enabled client can check the publishers
feed for new content and react to it in an
appropriate manner. - Syndication technologies are useful for mashups
that aggregate event-based or update-driven
content
29Outline
- The term Mashup
- Mashups Genres
- Technologies behind Mashups
- Emerging Technical and Social Challenges
30Data Integration Challenges
- According to surveys number one enterprise IT
concern today is data integration within the
enterprise virtual organization - Virtual Organization a composition of federated
business units, each contained within its own
administrative domain - Mashup developers are faced with challenges of
deriving shared semantic meaning between
heterogeneous data sets. - Mashup developers challenges are similar to
integration challenges faced by enterprise IT. - Translator/Mapper systems between different data
models must be designed.
31Data Pollution
- Many mashups solicit public user input
- it can be quite powerful because it enables open
contribution and best-of-breed data evolution - it can be subject to inconsistent, incorrect or
intentionally misleading data entry
32Social Challenges
- Protection of intellectual property and consumer
privacy versus fair-use and the free flow of
information
33In general
- Publishing and Discovering External Data Services
other than SOAP-based Web Services - Semantically annotation of data services
- Security leaks (e.g. openness to injection
attacks)
34In general
- Client-side processing is not suitable for
handling complex queries such as Show me the
average purchase price for real estate bought by
actors who have co-starred in movies with Brad
Pitt - Interoperability among different external data
providers - Standard formats for persistent data and
exchanged messages
35Thank you for your attention