Lezione 7: Mashup

24
MASHUP Roberto Polillo, www.rpolillo.it 1 Università degli Studi di Milano Bicocca Dipartimento di Informatica, Sistemistica e Comunicazione Corso Web 2.0 AA 2009-2010

description

Slide del corso sul Web 2.0 tenuto all'Università di Milano Bicocca da R.Polillo - Edizione ottobre 2009. Vedi anche www.corsow.worpress.com

Transcript of Lezione 7: Mashup

Page 1: Lezione 7: Mashup

MASHUP

Roberto Polillo, www.rpolillo.it

1

Università degli Studi di Milano BicoccaDipartimento di Informatica, Sistemistica e Comunicazione

Corso Web 2.0AA 2009-2010

Page 2: Lezione 7: Mashup

2

Cloud computing: tipi di servizioIN

TER

NET

Prevalentemente per gli sviluppatori di sw, per es.:Amazon Web Services (2006+)IBM Blue Cloud (2008+) Google App Engine (2008+)Microsoft Windows Azure (2009+)

Per es.: Facebook, Youtube, Skype, Google Apps, Salesforce, Dropbox,

Servizi applicativi di rete accessibili via API. Per es.: identity, payment, map, …,

Device (hw+sw) per accedere al cloud computing. Es.: mobiles, thin clients

Immagine da Wikipedia

CLIENT

Page 3: Lezione 7: Mashup

Mashup3

Dall’inglese: mash = miscuglio to mash = schiacciare

(Termine usato anche per un genere musicale)Applicazione web che integra dinamicamente contenuti o servizi provenienti da più fonti (es. via API o feed RSS), per creare un servizio nuovohttp://en.wikipedia.org/wiki/Mashup_(web_application_hybrid)

Una buona presentazione: http://www.slideshare.net/valicac/mashups-87355#slideshow_stats

Page 4: Lezione 7: Mashup

Mashup: architettura4

data sourcesEsempi:• Video• Photo• Maps• News• Blog feeds

mashup web site

browser

interfaccia pubblica (API, RSS, …)

NB: Deep linking non è considerato mashup

API calldata

data manipulation

R.Polillo – Corso Web 2.0 (dic 2009)

Page 5: Lezione 7: Mashup

Mashup: data manipulation 5

Selezione e filtraggio di dati Combinazione di dati Normalizzazione e traduzione di dati Visualizzazione di dati Aggregazione di dati

R.Polillo – Corso Web 2.0 (dic 2009)

Page 6: Lezione 7: Mashup

Esempi 6

www.housingmaps.comAppartamenti in affitto e in vendita geolocalizzati(Googlemaps + craigslist)

www.plazes.com Location based social network (Startup tedesca, recentemente acquisita da Nokia)

Ma… mashup non significa solo geo-localizzazione di informazioni… Vediamone alcuni esempi diversi

R.Polillo – Corso Web 2.0 (dic 2009)

Page 7: Lezione 7: Mashup

Un altro esempio7

Flickr + youtube + blog (drupal) = travelblogwww.theworldisnotflat.com

Video su come è stato fatto:http://it.youtube.com/watch?v=LoQOUiJpvw4&feature=user

R.Polillo – Corso Web 2.0 (dic 2009)

Page 8: Lezione 7: Mashup

Altri esempi (visual interface)8

http://www.nyartbeat.com/bubbles http://www.search-cube.com/ http://twitrratr.com/ http://labs.ideeinc.com/multicolr/

R.Polillo – Corso Web 2.0 (dic 2009)

Page 9: Lezione 7: Mashup

Lifestreams9

Diario delle attività personali on-line Esempio: http://adactio.com/extras/stream/ L’idea è di Jeremy Keith, in “Streaming my life

away” ( http://adactio.com/journal/1202/ ) Interessanti commenti in in

http://hyperradiant.net/blog/2007/05/lifestreams-an-essay-in-progre.html

R.Polillo – Corso Web 2.0 (dic 2009)

Page 10: Lezione 7: Mashup

http://www.perspctv.com/ 10

Un “cruscotto” per monitorare i flussi informativi relativi alle elezioni presidenziali USA su internet

Dati da CNN, Twitter Search, Technorati, Daylife, Alexa, Google Insight s for Search, ed altri

“This project presents different perspectives in our world, including that of Mainstream media and user-generated content on the Internet. Explore the similarities and the disparities, hear the many voices that have emerged and choose which view, if any, makes the most sense to you. What we think vs. what they say we think -- All the chatter on the Internet, all the traditional news media coverage, and all the pollsters -- Perspctv brings it all together in a simple and elegant manner -- and gives a unique "dashboard" picture of the elections at any one given moment in time, totally un-biased. “

R.Polillo – Corso Web 2.0 (dic 2009)

Page 11: Lezione 7: Mashup

11

“There are creative people all around the world, hundreds of millions of them, and they are going to think of things to do with our basic platform that we didn’t think of.”

Vinton Cerf

R.Polillo – Corso Web 2.0 (dic 2009)

Page 12: Lezione 7: Mashup

Altri esempi13

Trendfo“Trendfo tracks the latest search keywords on the internet and provides fresh, relevant info for quickly learning about the Internet's hottest trends.”http://trendfo.com/

Havaria Information Service AlertmapRiunisce su una mappa del mondo dati su eventi atmosferici, sismici, vulcanici provenienti da 200 sorgenti informativehttp://visz.rsoe.hu/alertmap/index.php?lang=

Mappa dei blog italianihttp://www.deeario.it/2006/08/21/mashup-mappa-dei-blog-italiani/

Real-time mapping of Flickr, Twitter, YouTube posts http://flickrvision.com/ , http://twittervision.com/, http://spinvision.tv/

La mappa delle public toilets in Manhattanhttp://www.diaroogle.com/

R.Polillo – Corso Web 2.0 (dic 2009)

Page 13: Lezione 7: Mashup

14

R.Polillo – Corso Web 2.0 (dic 2009)

Fonte: http://www.slideshare.net/josanku/widget-ecosystem-and-widget-economy

Page 14: Lezione 7: Mashup

15

Fonte: http://www.slideshare.net/josanku/widget-ecosystem-and-widget-economy

Page 15: Lezione 7: Mashup

Info sui mashup16

http://www.programmableweb.com/“ProgrammableWeb is where you can keep-up with what's new and interesting with mashups, Web 2.0 APIs, and the new Web as Platform”

Esempio: most popular mashups:http://www.programmableweb.com/mashups/directory/1?view=text

Best mashups: http://mashupawards.com/“The best mashups on the web”:

R.Polillo – Corso Web 2.0 (dic 2009)

Page 16: Lezione 7: Mashup

Fonte: http://www.programmableweb.com/mashups

17

R.Polillo – Corso Web 2.0 (dic 2009)

Page 17: Lezione 7: Mashup

Mashup: strumenti24

API (Application Programming Interface, interfaccia programmativa dell’applicazione) pubblicate dai più importanti siti

Es. Google API (http://code.google.com/apis/gdata/basics.html ), ...

Mashup editorsYahoo!Pipes, Google Mashup Editor, Microsoft Popfly, Dapper, IBM QEDWiki, …

R.Polillo – Corso Web 2.0 (dic 2009)

Page 18: Lezione 7: Mashup

Google OpenSocial25

OpenSocial è un insieme di API per applicazioni di social networking Sviluppato da Google con MySpace e altri social networks (da

novembre 2007) Il set di API comuni permetterà agli sviluppatori di non imparare

diversi linguaggi per creare applicazioni per svariati siti. Ma: “We don’t want to have the same application on multiple social

networks. We want applications that can use data from multiple social networks.” (Tim O’Reilly su OpenSocial, titolo del commento “It's the data, stupid!”)

http://en.wikipedia.org/wiki/OpenSocial

R.Polillo – Corso Web 2.0 (dic 2009)

Page 19: Lezione 7: Mashup

Yahoo!Pipes26

Applicazione web che permette di costruire delle pipes mediante una semplice interfaccia grafica (rilasciata in β a inizio 2007)

Una pipe è una combinazione di comandi che permettono di acquisire, filtrare, filtrare e manipolare in vario modo dati provenienti da varie sorgenti web (tipicamente, feed RSS)

“Unix pipes for the web”:“at the heart of the Unix philosophy is the idea that the power of a system comes more from the relationships among programs than from the programs themselves."

Kernighan & Pike, 1984

R.Polillo – Corso Web 2.0 (dic 2009)

Page 20: Lezione 7: Mashup

Pipes: il concetto27

Programma A

Programma B

Programma D

dati0 dati1 dati2

dati3

SEQUENZA DI “FILTRI”

Programma B’

ALTERNATIVA

LOOP

R.Polillo – Corso Web 2.0 (dic 2009)

Page 21: Lezione 7: Mashup

28

R.Polillo – Corso Web 2.0 (dic 2009)

Page 22: Lezione 7: Mashup

Mashup: punti di forza30

“Lightweight” application(volume di codice ridotto basso costo di sviluppo dell’applicazione)

Facilità di sviluppo dell’applicazione(disponibilità di tools che non richiedono grandi competenze tecniche – es.pipes)

Disponibilità di vaste basi di dati Bassi (o nulli) costi di acquisizione e aggiornamento dati Set-up dell’applicazione rapido

(time-to-market, possibilità di quick prototyping)

R.Polillo – Corso Web 2.0 (dic 2009)

Page 23: Lezione 7: Mashup

Mashup: aspetti critici31

Dipendenza dalle data sources(qualità dei dati, prestazioni, disponibilità e continuità del servizio, cambiamenti di politiche di servizio, stabilità fragilità: “la forza dell’anello più debole”)

API: standards e versioning Proprietà intellettuale e copyright

(“right to remix”: fino a che punto?) Privacy

(incrociare e filtrare i dati può generare problemi non esistenti nei dati originari)(vedi ad es.: http://mashworks.net/images/5/59/Goodman_Moed_2006.pdf )

R.Polillo – Corso Web 2.0 (dic 2009)

Page 24: Lezione 7: Mashup

32

Mashup:LAVORO INDIVIDUALE

Cercare e segnalare esempi dimashup particolarmente interessanti ed innovativi (per es. su www.programmableweb.com o su www.mashupawards.com )

Realizzare un semplice mashup (per esempio con yahoo!pipes)

32R.Polillo – Corso Web 2.0 (ott 2009)