Mashups for the masses Maarten Brugman & Sven Vintges.

24
Mashups for the masses Maarten Brugman & Sven Vintges

Transcript of Mashups for the masses Maarten Brugman & Sven Vintges.

Page 1: Mashups for the masses Maarten Brugman & Sven Vintges.

Mashups for the masses

Maarten Brugman&

Sven Vintges

Page 2: Mashups for the masses Maarten Brugman & Sven Vintges.

Agenda

• Mashup• Voorbeelden• Architectuur• Tools Maarten• YUI Sven

– maps API– YUI– feed API– JavaScript?– web svs API XXX – logging

• Google APIs Maarten– maps API– gadget API– feed API– web svs API XXX– logging ?

• Case: callcenter• Demo + code snippets beiden: map, map controls, data op map, focussen op map, • Beveiliging (cookies, IWA, SAML? WS-Sec?) Sven• Vergelijking• Andere mashup-tools (WSO2 Sven, Google mashup Maarten, yahoo pipes Sven, intel mashmaker

Maarten)

Page 3: Mashups for the masses Maarten Brugman & Sven Vintges.

Wat is een mashup

• Muzikale stroming

– DJ Danger Mouse: The Beatles and Jay-z• “a web application that combines data from more

than one source into a single integrated tool “ (Wikipedia)”

Page 4: Mashups for the masses Maarten Brugman & Sven Vintges.

Voorbeelden, shopping

• Zoeken in verschillende shops;• Vergelijken van de prijzen van de

verschillende shops;• Community, review door andere gebruikers

over producten én shops.

• http://www.vergelijk.nl/

Page 5: Mashups for the masses Maarten Brugman & Sven Vintges.

Voorbeelden, nieuws

• Integreren van verschillende nieuwsbronnen;• Bronnen zijn diverse soorten, bijvoorbeeld de

beurs met nieuwberichten;

• http://finance.google.com

Page 6: Mashups for the masses Maarten Brugman & Sven Vintges.

Voorbeelden, video en foto

• Tonen van foto en map /3d foto’s;• Foto’s m.b.v. een game laten kwalificeren,

achterliggen doel: opbouwen hoe mensen foto’s kwalificeren.

• Herkenbare punten opslaan.

• http://www.360tuscany.net/

Page 7: Mashups for the masses Maarten Brugman & Sven Vintges.

Voorbeelden, mapping

• Informatie met een map combineren;• Geografische informatie (GeoRSS) in kaart

brengen;

• http://www.swisstrain.ch

Page 8: Mashups for the masses Maarten Brugman & Sven Vintges.

Agenda (2)

Page 9: Mashups for the masses Maarten Brugman & Sven Vintges.

Mashups Server Side

• Integratie informatie op de server (proxy style).

Figuur 1: server-side mash-up, ref: sun.com

Page 10: Mashups for the masses Maarten Brugman & Sven Vintges.

Mashups Server Side

• Voordelen– Beveiliging: XMLHttpRequest sandboxing;

– Veel libraries in JAVA en .NET om WS te gebruiken;

– Filtering van data (grote hoeveelheden);

– Caching;

– Aggregatie;

– Multiple sites.

Page 11: Mashups for the masses Maarten Brugman & Sven Vintges.

Mashups Client Side

• Client side integratie.

Figuur 2: client-side mash-up, ref: sun.com

Page 12: Mashups for the masses Maarten Brugman & Sven Vintges.

Mashups Client Side

• Cross domain issues;• Makkelijk en snel, geen applicatie server

nodig;• Veel browsers ondersteunen JSON;• Performance,

kracht van client wordt gebruiker.

Page 13: Mashups for the masses Maarten Brugman & Sven Vintges.

Yahoo! Toolkit (1)

• Yahoo! Music engine• Yahoo! Widgets• Yahoo! Search• Yahoo! Travel• Yahoo! Traffic• Yahoo! User Interface Library• Yahoo! Pipes• …

Page 14: Mashups for the masses Maarten Brugman & Sven Vintges.

Yahoo! UI Toolkit

Page 15: Mashups for the masses Maarten Brugman & Sven Vintges.

Yahoo! Widgets

• Desktop experience;• Mashups:

– Veel standaard;

– Zelfbouw mogelijk.

• http://widgets.yahoo.com

Page 16: Mashups for the masses Maarten Brugman & Sven Vintges.

Yahoo! Mapping

• Verschillende manieren– AJAX (JavaScript);– Flash (Actionscript 2 en 3);– Simple API;– Image API;

• Mogelijkheden– Plaatsen van markers, labels etc;– Geocoding;– Routes weergeven (polylines);– Logging, zooming, navigatie.

Page 17: Mashups for the masses Maarten Brugman & Sven Vintges.

Google APIs

so many to choose from...AndroidGoogle Data APIsBlogger Data API FeedBurner APIs Gmail Atom Feeds Google Account Authentication Google AdSense API Google AdSense for Audio API Google AdWords API Google AJAX APIs Google AJAX Feed API Google AJAX Language API Google AJAX Search API Google Analytics Google Apps APIs Google Base Data API Google Book Search Book Viewability API Google Calendar APIs and Tools

Google Chart API Google Checkout API Google Code Search Google Code Search Data API Google Contacts Data API Google Coupon Feeds Google Desktop Gadget APIGoogle Desktop Search APIs Google Documents List Data API Google Gadgets API Google Gears Google KML Google Mapplets Google Maps API Google Mashup Editor Google News Feeds Google Notebook Data API OpenSocial Orkut

Google Safe Browsing APIs Google Search Appliance APIs Google Search History Feeds Google Sitemaps Google SketchUp Ruby API Social Graph API Google Spreadsheets Data API Google Static Maps API Google Talk XMPP Google Themes API Google Toolbar API Google Transit Feed Specification Google Visualization API Google Web Toolkit Picasa APIs Picasa Web Albums Data API YouTube Data API

Page 18: Mashups for the masses Maarten Brugman & Sven Vintges.

Demo Yahoo! Vs Google

• Map tonen;• Basis componenten op map;• Hoe plaats je markers + data;• Zoom naar een marker/ expand;• Bijwerken data op de map.

Page 19: Mashups for the masses Maarten Brugman & Sven Vintges.

Aandachtspunten voor je mashup

• Beveiliging;– Client-side mashup;– Server-side mashup;

• Integratie;– Server producten;

• Versionering/ beschikbaarheid– Client-side mashup, beschikbaarheid van services/ kwaliteit

van dienstverlening afhankelijk van derden;– Server-side mashup. Server dient als proxy, indien service

niet beschikbaar dan kan server toch leverne door het uit de cache te halen.

• Performance;– Client-side: minder load op de server;– Server-side: complexere integratie mogelijk, maar ook

caching en polling.

Page 20: Mashups for the masses Maarten Brugman & Sven Vintges.

Toekomst

• Google Mashup toolkit• http://www.mapbuilder.net/• http://mashmaker.intel.com/

Page 21: Mashups for the masses Maarten Brugman & Sven Vintges.

Yahoo! Pipes

• Integratieservice;• Resultaat als ‘pipe’ voor de map;• Consumeren van web services, RSS Feeds,

Geo feeds.

Page 22: Mashups for the masses Maarten Brugman & Sven Vintges.

WSO2 Mashup server

• Web service composing;• Deploying services als ws-*, REST met

WSDL, WSDL 2.0, XML-Shema en AJAX test pagina;

• Gebaseerd op apache/ axis2 tbv security, betrouwbaarheid en bewaking (governance);

• Gericht op enterprise mash-ups;• www.wso2.com

Page 23: Mashups for the masses Maarten Brugman & Sven Vintges.

Links

• Websites– http://www.programmableweb.com/– http://reviews.cnet.com/4520-9239_7-6526615-3.html– http://developer.yahoo.com/– http://mooshup.com

• Mashups– http://www.swisstrain.cz– http://www.treelz.com– http://spotcrime.com/

• Bullet 3

Page 24: Mashups for the masses Maarten Brugman & Sven Vintges.

Benodigdheden

• Tools– Commercieel (enterprise mashups): Nexaweb,

JackBe, BackBase, <TODO>– Open source: google gadget, YUI,

• Gegevensbronnen– Maps: google, yahoo, ask, M$– Publieke registers: kvk, telefoongids, postcodes, …– Enterprise services: ….

• Runtime– Appserver– Google mashup server– WSO2 mashup server