SlideShare a Scribd company logo
1 of 26
Download to read offline
`
              UNIVERSITA DEGLI STUDI DI TRENTO
                                  `
                           FACOLT A DI E CONOMIA
C ORSO DI L AUREA IN N ET-E CONOMY. T ECNOLOGIA E MANAGEMENT DELL’ INFORMAZIONE
                             E DELLA CONOSCENZA




                     Applicazioni ICT: il Mash-up




Autore
Alessandro Trentin


Matricola
126134




                         A NNO ACCADEMICO (2008-2009)
Indice



1   Il concetto                                                                                      1

    1.1   Mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   1

          1.1.1   Le API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    1

          1.1.2   Caratteristiche mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . .     2

          1.1.3   Tecnologie e strumenti a supporto dei mash-up . . . . . . . . . . . . . . .        4

          1.1.4   Tipologie di mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     4


2   Applicazioni di mash-up                                                                          6

    2.1   Google Mashup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      6

          2.1.1   Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    7

    2.2   Microsoft Popfly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .     8

          2.2.1   Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    2.3   Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

          2.3.1   Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12


3   Yahoo Pipes                                                                                     14

    3.1   I moduli di Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

    3.2   L’editor di Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    3.3   Gli esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16


4   Conclusioni                                                                                     23




                                                  i
Capitolo    1
Il concetto


1.1     Mash-up

Gli strumenti Web 2.0 stanno modificando radicalmente il nostro modo di comunicare sul Web.
Chiunque pu` realizzare un blog in una manciata di minuti e pubblicare video online con estrema
              o
       a           u          `
facilit` . Ancor pi` semplice e l’adesione ad un social network. Sia che si parli di social network
dedicati ai rapporti personali e al tempo libero come Facebook o MySpace, sia che ci si riferisca
a quelli che nascono con scopi professionali come LinkedIn, sempre pi` persone si iscrivono a
                                                                            u
questi servizi di comunicazione 2.0. Da un lato, quindi, abbiamo queste piattaforme che rendono
molto semplice la pubblicazione di testi, immagini e video, e dall’altro abbiamo gli internauti, che,
muovendosi con disinvoltura tra i vari servizi, lasciano tracce sparse della propria identit` tra un
                                                                                              a
                                                       `
social network e l’altro. La conseguenza immediata e la frammentazione della propria presenza
on-line in diversi punti del Web. Vista la frequenza con cui la nostra identit` on-line si ristruttura,
                                                                              a
si aggiorna e arricchisce di nuovi contenuti multimediali, l’idea stessa di sito personale statico in
cui raccogliere le informazioni e i contributi multimediali che ci riguardano diventa improponibile:
aggiornarlo richiederebbe troppo tempo.



1.1.1 Le API

                                                     `
In progetti software molto vasti, specialmente dove e attesa e desiderata l’interazione tra diversi
             `
programmi, e necessario sviluppare interfacce per la programmazione dell’applicazione (API, Ap-
plication Programming Interfaces) ben definite. Si pu` pensare alle API come a standard validi in
                                                      o
un ambiente di programmazione, ma anche e soprattutto ad un insieme di procedure disponibili ad
un programmatore, che possono essere riutilizzate al momento dello sviluppo di un’applicazione.



                                                  1
1.1. Mash-up                                                                        2

                      `
L’utilizzo delle API e quindi un metodo per ottenere un’astrazione tra hardware e programmatore,
o tra software a basso ed alto livello, che permette agli sviluppatori di non dover riscrivere per ogni
applicativo tutte le funzioni di base e di riprogettare o migliorare le funzioni all’interno dell’API
senza cambiare il codice che si affida ad essa (Abramo VIncenzi, 2009).



1.1.2 Caratteristiche mash-up

La soluzione per gestire la complessit` e la frammentariet` della nostra identit` digitale on-line si
                                      a                    a                    a
chiama mash-Up, parola che indica la possibilit` tecnica di aggregare informazioni e servizi offerti
                                                a
da diversi siti in singole pagine Web (Daniele Citterio, 2008). Le combinazioni sono pressoch´      e
infinite.

    Il significato di mash-up viene spesso spiegato in italiano indicando che, letteramente, vuol
                      `
dire poltiglia. Forse e un po’ riduttivo: poltiglia pu` avere connotazioni negative mentre in genere
                                                      o
con un’azione di mashing up si riduce tutto a pezzetti per ottenere qualcosa che ha una consistenza
omogenea (Mauro Rossi, 2009).

                                     `
    In inglese il termine mash-up si e diffuso inizialmente nel campo della pop music. Quando si
usa la musica di una o pi` canzoni, le parole di altre e le si mixa insieme per creare una nuova
                           u
                                         `
canzone si fa un mash-up. Un mash-up e dunque un pastone di elementi diversi con cui si creano,
a loro volta, nuovi elementi.

                                                         `
    Trasferendo il concetto dalla pop music, un mash-up e una fusione dei contenuti o dei servizi
di una o pi` applicazioni Web che d` vita ad una nuova applicazione Web.
           u                        a

    I mash-up uniscono alcune delle istanze pi` innovatrici del Web 2.0: la visione della rete come
                                                  u
una piattaforma in cui, grazie a protocolli condivisi, le applicazioni sono in grado di comunicare
fra loro, la tendenza da parte dei siti pi` noti, come Google, eBay o Yahoo!, di rendere disponibili
                                          u
liberamente i propri contenuti e servizi e la partecipazione di utenti e sviluppatori che sempre pi`
                                                                                                   u
                                                                             `
diventano creatori indipendenti di contenuti. L’unione di questi servizi e reso possibile dall’uso
delle API, ossia dalle interfacce pubbliche di programmazione che molti siti rilasciano gratuita-
                                                                                    `
mente per la creativit` degli sviluppatori (Daniele Citterio, 2008). Google Maps e uno dei servizi
                       a
pi` utilizzati per i mash-up, ma gli esempi non mancano per YouTube e per decine di altri servizi.
  u

                                                     `
    Un esempio emblematico di questa tendenza e il network professionale LinkedIn che ha lan-
ciato un nuovo servizio che va sotto il nome di “Applications”. Questa funzionalit` d` agli utenti la
                                                                                    a a
possibilit` di integrare all’interno del proprio profilo informazioni provenienti da una serie di piat-
          a
taforme esterne. Si possono in tal modo inserire ed aggiornare automaticamente: i post del proprio
blog gestito con Wordpress, presentazioni condivise online con Google Presentation o SlideShare,
1.1. Mash-up                                                                        3


informazioni sui propri viaggi gestite con My Travel, i post dei propri blog preferiti tramite Blog
Link, ed altro ancora.

    Le ragioni che hanno spinto LinkedIn verso questo passo sono condensate in questa frase pub-
blicata sul sito: “LinkedIn Applications enable you to enrich your profile, share and collaborate
with your network, and get the key insights that help you be more effective“ (Linkedin, 2009).

    Per creare un mash-up si utilizzano di solito le API rilasciate liberamente dalle diverse appli-
cazioni di cui si vogliono unire i servizi. Le API offrono dei protocolli, ossia un set di istruzioni
e formati di dati, che vanno gestite attraverso i tipici linguaggi di programmazione Web come
PHP o ASP.Net. Per utenti non interessati o comunque non in grado di utilizzare i linguaggi
di programmazione, pu` utilizzare alcuni servizi che permettono di creare mash-up in modalit`
                        o                                                                           a
visuale:

   • Google Mash-up Editor, pi` indicato per sviluppatori;
                              u

   • Microsoft Popfly, basato quasi completamente su interazioni con il mouse;

   • Yahoo! Pipes, completo ma non completamente intuitivo per gli utenti che si affacciano per
     la prima volta verso l’utilizzo di questa tipo di applicazione.

   In sostanza, con l’utilizzo di mash-up, si vogliono raggiungere tre obiettivi:

   • rendere i profili degli utenti sempre pi` ricchi e completi;
                                            u

   • favorire la collaborazione e la condivisione di informazioni tra network;

   • (conseguenza dei primi due punti), consentire un utilizzo della piattaforma sempre pi` effi-
                                                                                          u
     ciente.

   Riassumendo, la popolarit` del mash-up proviene da:
                            a

   • Capacit` di fornire interattivit` all’utente e alle applicazioni;
            a                        a

   • Capacit` di aggregare e reinventare gli insiemi di dati prodotti da terzi.
            a

                                                                   `
    Quindi, ne consegue che un sito web fatto grazie ai mash-up e in grado di ricevere contenu-
ti e funzionalit` da sorgenti di dati che giacciono esternamente ai suoi confini organizzativi. Ne
                a
consegue un allargamento del suo contesto di informazione, una correlazione dell’informazione,
intesa come capacit` di unire contenuti provenienti da fonti non correlate, un informazione mag-
                     a
giormente strutturata, grazie ad una visione pi` ampia del contesto di collocazione della singola
                                                 u
informazione.
1.1. Mash-up                                                                                    4


1.1.3 Tecnologie e strumenti a supporto dei mash-up

Questa sezione fornisce una panoramica delle nuove tecnologie che stanno facilitando lo sviluppo
dei mash-up.


Screen Scraping : lo scraping risulta essere il processo che utilizza degli strumenti software per
     analizzare il contenuto originalmente creato per essere letto dalle persone con la finalit` di
                                                                                              a
     estrarne strutture di dati semantici che rappresentano queste informazioni di modo tale da
     utilizzarle e manipolarle in maniera pragmatica (Dalke Scientific, 2009).

RSS : un feed RSS e un formato di sindacazione1 della famiglia XML-based. In quest’ambito,
                      `
    la sindacazione implica che un sito web che vuole distribuire contenuto crea un documento
    RSS e invia il documento attraverso un RSS publisher. Un client abilitato RSS pu` con-   o
    trollare il feed dell’editore publisher per sapere se c’` nuovo contenuto e decidere di agire
                                                             e
                                             `
    di conseguenza. La tecnologia RSS e stata adottata per sindacare contenuto di vario tipo,
    da articoli e titoli di notizie, ai cambiamenti nelle pagine wiki, o nei dati audiovisuali come
    programmi radio. Gli RSS sono un’ottima e semplice modalit` di prendere il contenuto dal
                                                                     a
    web e portarlo in un’unica destinazione di navigazione. Quasi tutti i tipi di contenuto web
    possono essere sindacati utilizzando gli RSS. Si Pensi ad una serie di tubi che inviano infor-
    mazioni da un posto all’altro – non importa di che tipo di dati si tratta, basta che abbia un
    RSS feed (Universit` degli studi di Trieste, 2009).
                           a

ATOM : Atom e un protocollo di sindacazione simile al feed RSS, ma pi` recente. E’ stato
               `                                                          u
   proposto come standard alla Internet Engineering Task Force (IETF) e cerca di mantenere
   metadati migliori rispetto alla tecnologia RSS, fornendo una documentazione migliore e pi`
                                                                                            u
   rigorosa, e che incorpora la nozione di costrutto per la rappresentazione comune dei dati
   (Universit` degli studi di Trieste, 2009).
             a

GEORSS : Valgono tutte le considerazioni fatte per il feed rss. L’elemento di distinguo e che
                                                                                        `
   un feed GEORSS contiene anche l’informazione sulla posizione geografica (latitudine e lon-
   gitudine) di ogni singolo elemento del Feed. Nello specifico: GEORSS = RSS + (lat e
   long).



1.1.4 Tipologie di mash-up

Le principali tipologie di mash-up sono (Ciro Zambrano, 2009):
   1
    Per sindacazione si intende originariamente la possibilit` offerta da un fornitore di contenuti informativi di ri-
                                                             a
cevere automaticamente ed eventualmente ripubblicare le informazioni da esso prodotte; un formato di sindacazione
scandaglia le i componenti delle informazioni fornendo all’utente un’anteprima degli aggiornamenti apportati.
1.1. Mash-up                                                                                5


Mapping : tutti i dati che contengono anche informazioni geografiche possono essere rappresen-
    tati attraverso l’uso delle mappe. Uno degli eventi che ha catalizzato l’avvento dei mash-up
    `
    e stato l’introduzione da parte di Google delle Google Maps API. Il fatto che queste API
    fossero pubbliche ed aperte ha permesso agli sviluppatori web di mescolare tutti questi tipi
    di dati e di mostrarli su delle mappe. Tanto per non essere da meno, anche altre societ` han-
                                                                                           a
    no seguito questo esempio, vedi Microsoft (con Virtual Earth), Yahoo (con Yahoo Maps),
    e AOL (MapQuest). Un altro strumento messo a disposizione degli utenti per il mashup
                               `
    del dato geolocalizzato e il GEORSS. Il mapping effettua il mashing dei contenuti con la
    cartografia sfruttando le meta-informazione2 latitudine e longitudine.

Video e foto : l’emergere di fenomeni come siti di foto hosting e social networking come Flickr
     con le API disponibili hanno permesso una variet` incredibile di mash-up. Grazie al fatto
                                                         a
     che coloro che caricano le foto, vi associano dei metadati come, per esempio, chi ha scattato
                                                      `
     la foto, cosa rappresenta la foto, quando e dove e stata scattata, coloro che ideano i mash-up
     possono unire le foto con altre informazioni che possono essere associate con i metadati.
       Per esempio, un mash-up potrebbe visualizzare un grafico del social networking basandosi
       sui metadati pi` comuni nelle foto (soggetto, data di scatto, ed altri metadati).
                      u

Ricerca e shopping : i mash-up per la ricerca e lo shopping esistevano ancor prima che il termine
     mash-up fosse coniato. Prima dei giorni delle Web API, esistevano strumenti come BizRate,
     PriceGrabber, MySimon, e Google’s Froogle che sfruttavano una combinazione di tecnolo-
     gie business-to-business (b2b) e screen-scraping per aggregare e confrontare i prezzi di ci`
                                                                                                o
     che l’utente voleva acquistare.

News : le fonti di news (come New York Times, BBC o Reuters) utilizzano le tecnologie per la sin-
    dacazione dei contenuti come gli RSS e Atom sin dal 2002 per diffondere news informative
    su vari argomenti.
       I mash-up per la sindacazione dei feed possono aggregare i feed dell’utente e presentarli sul
       Web, creando un giornale personalizzato che si rivolge a particolari interessi dei lettori.




   2
    Le meta-informazioni sono di fondamentale importanza in quanto consento la correlazione quindi il mash-up dei
contenuti
Capitolo    2
Applicazioni di mash-up


2.1    Google Mashup Editor




                    Figura 2.1: Schermata iniziale di Google Mashup Editor


    Google ha presentato Mashup Editor (Google, 2009), diretto concorrente di Microsoft PopFly
e di Yahoo! Pipes, che permette di creare applicazioni su interfaccia Ajax. Google Mashup Editor



                                               6
2.1. Google Mashup Editor                                                                        7


              `
(figura 2.1) e una piattaforma per creare mash-up in modo estremamente semplice. Questa piat-
taforma mette a disposizione un’ambiente di sviluppo interattivo, che permette agli sviluppatori
                                                                              `
di modificare, compilare e gestire le proprie applicazioni. Questo Editor e basato sulla tecnologia
Ajax1 : infatti, mette a disposizione dell’utente delle API, basate su tecnologia AJAX, in modo da
ricreare situazioni del tutto simili graficamente alle applicazioni Google e consentendo, inoltre, di
inserire all’interno della propria web application prodotti come Google Maps o Google Calendar
personalizzati a seconda dell’esigenze dell’utente. Il tutto basato sulle tecnologie XML, JavaScript,
CSS e HTML.

   Una volta fatte le loro applicazioni, gli utenti possono provarle in una Sandbox2 , che ne
permette il debug, e quindi decidere di pubblicarle sotto il dominio googlemashups.com.

                            `
    Google Mashup Editor e un mash-up editor che, rispetto ai prodotti di Yahoo e Microsoft, limita
la costruzione di un’applicazione alle informazioni pubblicate da un feed RSS. Quindi l’utilizzo di
                 `
Google Mashup e demandato ad utenti che abbiamo una buona familiarit` sia con i prodotti Google
                                                                         a
che con i principi di programmazione web.



2.1.1 Considerazioni

                 `
Google Mashup e in grado di agganciarsi a un feed RSS (quindi non qualunque webservice) e pre-
sentare i contenuti con un’interfaccia grafica web evolutissima, tipo GMAIL per fare un esempio.
                                            `      `
La cosa spettacolare di Google Mashup e che e un ambiente di sviluppo per applicazioni web,
     `
che e a sua volta un’applicazione web. L’editor, il compilatore, l’interfaccia per la pubblicazione
                                                                o`
dell’applicazione, il sistema di controllo di versione: tutto ci` e web.

    Oltre a questo Google Mashup mette a disposizione delle API interessanti, in particolare quelle
                                                                    `
per la costruzione della GUI e per la persistenza dei dati. Inoltre e possibile accedere ad altre API
di google, come quelle di google maps o quelle di google calendar.

                                `
   Insomma, Google Mashup e uno strumento per sviluppatori che vogliono costruire un’applica-
zione a partire dalle informazioni pubblicate da un feed RSS.

       Ma se io voglio fare un’applicazione utilizzando le informazioni che mi restuisce un webser-
   1
                                                         `
      acronimo di Asynchronous JavaScript and XML, e uno strumento di sviluppo per la realizzazione di applicazioni
web interattive (Rich Internet Application). La tecnologia AJAX si basa su uno scambio di dati in background fra web
browser e server, che consente l’aggiornamento dinamico di una pagina web senza esplicito ricaricamento da parte
dell’utent
    2
      Periodo iniziale di una pagina nei risultati di ricerca nel quale la pagina o l’intero sito prevede un periodo di
                                                     `
latenza nel quale il posizionamento (ranking) non e perfettamente performante. Dopo un certo periodo di valutazione
da parte degli engines la pagina acquisisce una certa rilevanza e posizionamento all’interno della SERP3
2.2. Microsoft Popfly                                                            8


vice (come ad esempio le API di Flickr), con Google Mashup non posso fare niente. Inoltre, il
           `                                    `
programma e in versione beta, e il suo utilizzo e limitato e solo su invito.



2.2      Microsoft Popfly




                       Figura 2.2: Schermata iniziale di Microsoft PopFly


    Microsoft PopFly (Microsoft, 2009) (figura 2.2) una applicazione che la stessa Microsoft ha
definito come un sistema per creare pagine web e mash-up partendo da materiale gi` esistente in
                                                                                      a
rete o creato appositamente in maniera semplice ed intuitiva. Infatti, PopFly non richiede nessuna
conoscenza di programmazione e neppure di un ambiente di programmazione da scaricare. E’
infatti una applicazione web-based che funziona direttamente su tutti i browser.

                                           `
    Per poter utilizzare tale strumento e necessario avere un account, Hotmail, per poter accedere
                     `
al servizio. Inoltre e richiesta l’installazione dell’ambiente di runtime Silverlight.

          o                                     `
    Si pu` affermare che questa applicazione e stata creata appositamente per dare la possibilit` a
a tutti gli utenti (anche i meno esperti), di poter realizzare applicazioni, mash-ups, gadgets, pa-
gine Web e applicazioni in maniera semplice e intuitiva, tramite passaggi automatici e strumenti
visuali, senza il bisogno di conoscere il codice di programmazione. PopFly si prefigge di rendere
facilmente interfacciabili contenuti disponibili da varie fonti web. I video dei pi` comuni sistemi
                                                                                   u
2.2. Microsoft Popfly                                                                9


di sharing, le foto di Flikr, i contenuti blog di MySpace o le mappe di Virtual Earth possono essere
combinate dall’utente per realizzare un componente personalizzato. Si pu` affermare che PopFly
                                                                             o
` u
e pi` orientata ai contenuti multimediali, quali video, immagini e giochi anche se tuttavia sono
presenti anche moduli che estraggono dati da altri servizi per fornire news, mappe e link a siti di
shop on line.

                                                                              `
    Connettendo tra loro i vari block, e quindi le relative sorgenti di dati, e ad esempio possibile
sfruttare le mappe di Vitual Earth e i dati di GeoNames per localizzare i contatti di Twitter.

            `
    Popfly e basato su Silverlight, un plug-in cross-browser e cross-platform capace di gestire
immagini, testo, animazioni, audio e video; realizzato dalla stessa Microsoft, viene definito come
l’anti-Flash di Adobe per eccellenza.

    La restante parte, quindi non riferita a Silverlight, consiste di un insieme di informazioni in-
terconnesse con semplici click e drag&drop, il che rende l’applicazione utilizzabile da chiunque e
graficamente appetibile per combinare in modo drasticamente pi` curioso i propri materiali.
                                                                   u

    Popfly si divide in due macrosezioni:


    • da una parte si trova il “Creator“, ovvero la parte attiva in cui si ricombinano gli elementi per
      creare il proprio mash-up o la propria pagina web.
                `
      Creator e in effetti l’ambiente dove si crea la propria applicazione, la propria pagina web o la
      propria animazione semplicemente. In essa si trovano (o si possono realizzare ad hoc per chi
      conosce la programmazione) i componenti chiamati “block“ che non sono altro che elementi
      visuali, come ad esempio foto, video, pagine web, animazioni i quali possono essere ricom-
      posti ed usati a proprio piacere semplicemente trascinandoli e rilasciandoli. L’azienda ha
      affermato che altri blocchi third-party saranno offerti prossimamente ed tutti gli sviluppatori
      potranno crearli autonomamente sfruttando Silverlight. Microsoft prevede di offrire Popfly
      gratuitamente, ma certi “building block“ third-party potranno richiedere un abbonamento a
      pagamento ed altri saranno ristretti al solo uso non-commerciale. Sebbene Popfly Creator
      non richieda alcuna conoscenza di programmazione, gli sviluppatori possono personalizzare
      il codice della pagina utilizzando HTML, CSS o JavaScript. Possono inoltre contribuire alla
      creazione di nuovi block utilizzando il Block Builder SDK. Tramite il plug-in Popfly Explo-
      rer gli utenti di Visual Studio Express possono infine utilizzare il nuovo servizio di Microsoft
      per condividere le proprie applicazioni web-based.

    • dall’altra parte invece troviamo lo “Spaces“, ovvero il luogo in cui depositare e condividere i
      propri materiali e le proprie creazioni. L’aspetto sociale gioca un ruolo centrale nel progetto.
      Popfly Space permette agli utenti di connettersi ai creatori di altre applicazioni, tutte con-
2.2. Microsoft Popfly                                                              10


      servate sui server Microsoft. All’interno di questo social network gli utenti Popfly possono
      condividere, votare, commentare ed anche “remixare“ le creazioni di altri utenti.


                                          `
    Il grande valore aggiunto di Popfly e la capacit` di rendere le API dei vari servizi web-based
                                                     a
esistenti (da Flickr a Twitter, con una lunga schiera di altri servizi gi` inclusa) un elemento utiliz-
                                                                         a
zabile senza alcuna conoscenza particolare: l’interfaccia provvede a tutto e l’utente deve limitare
il proprio intervento a scelte ed azioni di comando. Quindi, le caratteristiche principali di questo
strumento di Microsoft sono la facilit` di uso, la possibilit` di creare animazioni e molto altro con
                                       a                     a
semplici movimenti del mouse (del tipo copia e incolla e trascina).

    Microsoft Silverlight

    Microsoft Corp. ha annunciato Silverlight, un nuovo plug-in tecnologico disponibile per diffe-
renti browser e piattaforme, che consente di offrire agli utenti innovative esperienze multimediali
e realizzare applicazioni Web altamente interattive. Le prime societ` che hanno dichiarato di avva-
                                                                     a
lersi di questa nuova tecnologia sono Akamai Technologies Inc., Brightcove Inc., Eyeblaster Inc.,
Limelight Networks, Major League Baseball e Netflix Inc. La nuova tecnologia sar` presentata in
                                                                                     a
anteprima a Milano durante Remix, conferenza gratuita tenuta da esperti Microsoft internazionali.
Per maggiori informazioni visitare www.microsoft.it/msdn/remix

    Microsoft Silverlight, chiamato in precedenza WPF/E (Windows Presentation Foundation Eve-
rywhere), si integra con le esistenti tecnologie Web e consente di fornire contenuti multimediali
di alta qualit` riducendo i costi. Silverlight viene fornito agli utenti finali tramite un’installazione
              a
rapida e semplice e permette di utilizzare sia sistemi Macintosh che Windows attraverso numerosi
browser Web, fra cui Internet Explorer, Firefox e Safari. I fornitori di contenuti cercano un modo
per fornire applicazioni altamente interattive utilizzando gli strumenti e le competenze che gi` pos-
                                                                                                  a
siedono. Sono alla ricerca di una soluzione completa che consenta di raggiungere rapidamente pi`      u
piattaforme con costi di implementazione ragionevoli, ha dichiarato Bob Muglia, Vicepresiden-
te senior della divisione Server and Tools di Microsoft. Microsoft Silverlight punta a soddisfare
                                                                                              `
questa esigenza e costituisce un vero e proprio passo avanti per il settore. Silverlight e l’unica
soluzione disponibile oggi sul mercato che consente ai creatori di contenuti di inserirsi nell’ampio
ecosistema di tecnologie Windows Media portando a nuovi livelli l’esperienza interattiva sul Web.



2.2.1 Considerazioni

La forza del progetto di Microsoft, e l’aspetto che lo diversifica dal simile strumento di Yahoo,
         `                     `
“Pipes“, e la facilit` con cui e possibile eseguire le varie procedure, senza alcun know-how tecnico
                     a
o esperienza di sviluppo. A prima vista, PopFly sembra essere quello con la grafica pi` accattivante
                                                                                        u
2.3. Yahoo! Pipes                                                               11


e che promette di permetter di sviluppare dei “mash-up“ senza essere uno sviluppatore. Quello
                               `    `
che un po’ stride con PopFly, e la e la naturale interpretazione del Web 2.0 di Microsoft: per
                                                           `
usare Popfly bisogna scaricarsi Microsoft Silverlight, che e il modo di Microsoft di reinventarsi
Macromedia Flash e il formato SVG.

                                                     `
    Quindi, concludendo, la creazione dei mash-up e effettivamente semplice e abbastanza intui-
tiva, ma probabilmente c’` spazio per ulteriori migliorie in questo senso. Sicuramente ci sono un
                           e
po’ di particolari da sistemare all’interno del designer visuale, sia in termini di usabilit` che di
                                                                                            a
presentazione.

   Da sottolineare, tra i blocchi ufficiali creati dal team di sviluppo si possono notare diversi,
almeno 6, riguardanti applicazioni Yahoo!, eppure di blocchi con applicazioni Google non c’`   e
nemmeno l’ombra.



2.3      Yahoo! Pipes




                          Figura 2.3: Schermata iniziale di Yahoo! Pipes


    Yahoo! Pipes (Yahoo!, 2009) rappresenta, insieme alle altre applicazioni sopra descritte, uno
dei migliori prodotti per la creazione di mash-up attualmente presenti sul web. Per accedervi e    `
                                                         `
sufficiente possedere un account Yahoo (gratuito) ed e adatto per qualsiasi tipo di piattaforma
                                            `
(Linux, Windows, Mac). Yahoo! Pipes e un ambiente di sviluppo semplicissimo (figura 2.3):
                                                  `
utilizzando un editor visuale nel proprio browser e possibile pubblicare e condividere servizi senza
                                                                             `
essere necessariamente dei programmatori. Per costruire il proprio mash-up e sufficiente trascinare
2.3. Yahoo! Pipes                                                                  12


                                                                                   `
i differenti moduli messi a disposizione e disporne le connessioni. Ogni modulo e specializzato
nel reperire informazioni su Internet da una particolare fonte o con una particolare tecnologia, o
nell’elaborare le informazioni in ingresso con certe modalit` . Pi` semplicemente, si pu` clonare
                                                              a     u                    o
un mash-up gi` presente sul sito e adatatrlo alle proprie esigenze.
               a

                      `
    Yahoo! Pipes e costituita da un’interfaccia grafica di manipolazione e rielaborazione di feed
rss, basata sul principio della pipe, ben noto agli utenti del sistema operativo Unix. In sintesi, una
       `
pipe e una connessione, un tubo che collega l’output di un comando o di un servizio con l’input
di un altro. In questo modo, si possono creare sequenze di comandi.Con Yahoo! Pipes, quindi
si possono creare pipe di ogni tipo, prelevando feed, rielaborandoli, filtrandoli e collegandoli con
altri servizi. Si tratta di una potente innovazione, diretta alla realizzazione di mashup dei contenuti,
tipica del Web 2.0.

                                                   `
    La cosa pi` interessante per il servizio non e semplicemente che aggrega i dati provenienti da
               u
varie fonti, ma che si pu` configurare la pipe o addirittura creare la propria pipe per ottenere i
                           o
dati esatti che desiderate. Ogni tubo ha il suo URL univoco, in modo da poter essere facilmente
                                                                         `
condiviso con la famiglia e gli amici. Una volta completato un pipe e possibile salvarlo sul server
e richiamarlo per ottenere in output un feed in uno dei seguenti formati: RSS, RDF, JSON o
        `
Atom. E anche possibile pubblicare il proprio mash-up cos` costruito e condividerlo su Internet,
                                                               ı
permettendo ad altri utenti di crearne dei cloni, aggiungervi ulteriori funzionalit` o utilizzarlo come
                                                                                   a
componente di un altropipe da loro creato.



2.3.1 Considerazioni

Yahoo! Pipes risulta quindi essere un ambiente di sviluppo visuale semplicissimo. Sono dispo-
nibili un sacco di blocchetti, che si possono combinare tra di loro unendoli con dei connettori. I
blocchetti disponibili sono svariati, dal “Fetch Data“ che permette di recuperare documento XML,
ai blocchetti gi` sviluppati per recuperare informazioni da applicazioni diffuse come Flickr o Goo-
                a
gle Base, ai blocchetti per l’elaborazione dei dati (Regex, Split, Reverse, etc.), etc. Il risultato
di questo stream di elaborazione viene automaticamente pubblicato in diversi formati (feed RSS,
JSON, XML, etc.).

    Yahoo! Pipes permette quindi di remixare i feed e creare mashup che forniranno nuovi dati in
un ambiente grafico visuale che permette con facilit` di ottenere quello che altrimenti richiederebbe
                                                   a
                                                                       `
notevoli conoscenze nel campo della programmazione. Yahoo! Pipes e veramente un applicazione
per mash-up completa, affidabile e di semplice utilizzo.

                                                `
    A mio giudizio, il servizio Yahoo! Pipes mi e parso pi` flessibile ed espandibile di PopFly
                                                          u
2.3. Yahoo! Pipes                                                             13


                                      `
(supporta anche Google), anche se e decisamente troppo presto per fare confronti dato che ho li ho
utilizzati solo per un breve lasso di tempo.
Capitolo    3
Yahoo Pipes

In questo capitolo vengono introdotti i moduli di Yahoo! Pipes e presentati i tre pannelli costituenti
l’editor presenti all’interno di Yahoo!Pipes.



3.1     I moduli di Yahoo! Pipes

I Moduli presenti all’interno dell’editor di Yahoo! Pipes sono raggruppati all’interno di categorie,
ciascuna basata su differenti funzionalit` .
                                         a


Sources : molte pipe utilizzano una data source, nel senso che questo modulo raccoglie i dati
     da differenti risorse, come per esempio Yahoo Search, Google e Flickr, e li rende disponi-
     bili all’interno della pipe per una successiva analisi e manipolazione da parte dell’utente,
     restituendo un RSS feed.

User Inputs : questi moduli permettno di definire i parametri della propria pipe; questi input
      possono essere anche utilizzati per alimentare altri moduli presenti all’interno della propria
      pipe.

Operators : questi moduli trasformano e filtrati il flusso dei dati attraverso la pipe. Per esempio,
     `
    e possibile effettuare ordinamenti, filtraggio delle informazioni, unione di differenti pipe.

URL : questo modulo manipola e costruisce gli URL. Come detto, le pipe ottengono i propri dati
    dal web, e queste risorse sono definite da URL. Molte di queste sono lunghe e complesse.
                                                                             `
    Questo modulo mi permette di controllare come una particolare URL e costruita. Questo
    blocco, per funzionare correttamente, utilizza i parametri presenti nell’URL. Per esempio,



                                                 14
3.2. L’editor di Yahoo! Pipes                                                     15


       all’interno di “http://finance.yahoo.com/rss/headline?s=gm“, il mio parametro di riferimento
       sar` “s“.
          a

String : questi moduli facilitano la manipolazione e la combinazione di stringhe di testo. Pos-
      siamo ottenere concatenazioni di stringhe, operazioni di search and replace, costruzione di
      sottostringhe a partire da una stringa, etc.

Date : questi moduli definiscono e formattano le date. Per esempio, all’interno di questi moduli e   `
     possibile convertire una stringa in un equivalente valore in formato date e formattare il valore
     della data (si pensi ad esempio ai diversi formati della data: 12/01/2009, oppure 01/12/2009,
     oppure Marted` 12 Gennaio 2009).
                     ı

Location : questo modulo converte una descrizione di un luogo in un dato geografico. Riconosce
     infatti gli indirizzi, i nomi di citt` /stati, gli aeroporti, etc.
                                          a

Number : questo modulo fornisce le operazioni basi dell’aritmetica, come ad esempio la somma,
    la sottrazione, moltiplicazione, etc.

Deprecated : All’interno della documentazione del sito di Yahoo! Pipes, compare la scritta:
     “These modules will continue to work however, we’re discouraging their use because we’ve
     introduced new modules with improved functionality“. Ci` credo si riferisca al fatto che
                                                                 o
     tali moduli sono stati rimpiazzati da altri moduli interamente ricostruiti da sviluppatori di
     Yahoo! Pipes, come ad esempio il modulo “Translate“, che a tutti gli effetti svolge le stesse
     funzioni del modulo “Babelfish“.


    Infine una piccola nota, le pipe possono essere riutilizzate con blocchi per nuove pipe. All’in-
                                                             `                                       `
terno della categoria “Favorites“ (vedi fig. 2.3 a sinistra), e possibile aggiungere le pipe a cui si e
maggiormente interessati. Inoltre all’interno della categoria “My Pipes“, sono raccolte le proprie
pipe sviluppate.



3.2      L’editor di Yahoo! Pipes

L’editor presente all’interno di Yahoo! Pipes ci permette di lavorare all’interno di un’intuitiva
                                `
interfaccia grafica. Tale editor e costituito da tre pannelli:


Library : il pannello Library si trova sul lato sinistro dell’editor e mostra la lista dei moduli sopra
     citati raggruppati per funzionalit` .
                                       a
3.3. Gli esempi                                                                   16


Canvas : il pannello Canvas si trova al centro del pannello e costituisce l’area principale di lavoro
                                                                               `
    per la costruzione, manipolazione e testing delle pipe. In quest’area, e possibile trascinare
    i vari moduli presenti all’interno del pannello Library. Per creare una pipe funzionante, e     `
    necessario collegare i vari moduli caricati all’interno dell’area di lavoro; tale operazione e  `
       facile e veloce: basta cliccare sul terminal output di un modulo e collegarlo in ingresso ad
                                              `
       un altro modulo. Se tale operazione e compatibile, alllora l’indicatore del terminale diverr`
                                                                                                   a
       di colore arancione.

Debugger : il pannello Debugger e un area ridimensionabile situata nella parte bassa dell’edi-
                                   `
                                      `
    tor. Attraverso questo pannello e possibile osservare gli output della pipe a diversi livelli;
    per esempio posso osservare l’output della mia pipe attraverso un modulo intermedio. Ri-
    sulta quindi di notevole utilit` poich` mi permette di effettuare un debug di ciascun seg-
                                   a      e
    mento della pipe. Una volta completata la pipe, basta cliccare su Save, attribuirle un nome,
    successivamente cliccare sul link Run Pipe.. per eseguirla.



3.3      Gli esempi

In questo paragrafo sono descritti due esempi di utilizzo di Yahoo! Pipes; nel primo viene detta-
gliata la procedura per la creazione di una semplice pipe step by step. Il secondo esempio invece
introduce un modulo, si pu` dire di “appoggio“, presente all’interno di Yahoo! Pipes. Punto di
                             o
partenza, naturalmente, la necessit` di possedere un account Yahoo per sperimentare l’ambiente
                                    a
                             `
Yahoo Pipes. L’operazione e semplice e gratuita.


    • Dalla home del sito http://pipes.yahoo.com/pipes/ cliccare su create a new pipe e loggarsi
      col proprio account yahoo. Comparir` una pagina come in figura 2.3.
                                           a

                                                                                        `
    • Trascinare col drag and drop il modulo fetch nell’area di lavoro. Il modulo fetch e un modulo
      generico che legge i feed rss indicati. Nel campo vuoto copia e incolla il feed rss. Per
                            `
      aggiungere altri feed e sufficiente cliccare sul segno + accanto ad URL nel modulo fetch ed
      incollare il nuovo feed nel campo vuoto che si crea.
       Nella figura 3.1, si osserva l’inserimento del feed del sito di “Repubblica“ e del “Corriere
       della sera“. In basso c’` un area chiamata debugger dove sono elencati tutti i moduli utilizzati
                               e
       nella pipe. Al proprio interno, se se clicca su “Refresh“ si otterr` l’aggiornamento della pipe
                                                                          a
       in base alle modifiche apportate (fig. 3.2).

                                                                          `
    • Al termine della prima fase, ovvero quella di inserimento dei feed, e conveniente salvare il
      pipe, cliccando su save ed assegnando il nome. Nel mio caso verr` chiamato “Notizie Italia“,
                                                                      a
      come si pu` anche vedere dalla figura 3.3.
                  o
3.3. Gli esempi                                        17




                    Figura 3.1: Selezione feed rss




                   Figura 3.2: Refresh della pipe




                  Figura 3.3: Salvataggio della pipe
3.3. Gli esempi                                                                   18


                                 `                                       o `
    • In seguito al salvataggio, e possibile testare la pipe. Per fare ci` , e necessario collegare il
                                                                        `
      modulo fetch al modulo pipe output. Il risultato da me ottenuto e visibile nella figura 3.4.




                          Figura 3.4: Il risultato della pipe “Notizie Italia“



    • Ora introduciamo la parte relativa agli “Operators“, in base ai quali risulta possibile effettua-
      re semplici operazioni, quali ad esempio l’ordinamento, il filtraggio dei contenuti presenti
      all’interno del modulo Fetch, etc. Nel mio caso, ordiner` le notizie per titolo, e successiva-
                                                                o
      mente filtrer` tali notizie tenendo come argomento base lo sport. Nello specifico, selezionare
                   o
      tra gli “operators” nel frame laterale sinistro il modulo “Sort” e trascinarlo nell’area di la-
      voro. Nel men` a discesa del modulo stesso selezionare “title“ e “ascending“. Tutto ci` e
                      u                                                                             o`
       visibile all’interno della figura 3.5.




                                      Figura 3.5: Il modulo Sort
3.3. Gli esempi                                                                 19


    • Occorre ora connettere i moduli. Cliccare sul piccolo cerchio in basso al modulo fetch e
      trascinare il tubo (pipe) sul cerchio in alto al modulo sort. Ripetere l’operazione dal modulo
      sort al modulo pipe output e cliccare su refresh per un aggiornamento del pipe. Salvare il
      lavoro. Il risultato sar` il seguente (fig. 3.6).
                              a




                         Figura 3.6: Il risultato dell’ordinamento per titolo



    • Ora concludiamo il breve esempio con il modulo “Filter“. Nel mio caso specifico, filtrer` le
                                                                                               o
      notizie che contengono all’interno del campo “description“ il valore “Calcio“ (fig. 3.7).




                                     Figura 3.7: Il modulo Filter


                             `
       Il diagramma ottenuto e osservabile nella figura 3.8
       Il risultato ottenuto viene mostrato nella figura 3.9.
3.3. Gli esempi                                                            20




                               Figura 3.8: La pipe finale




                  Figura 3.9: La versione finale del risultato della pipe
3.3. Gli esempi                                                                   21


                   `
    Il pipe creato e ora disponibile anche come feed rss per essere riutilizzato nelle diverse applica-
                                                `
zioni. Per disporre del pipe come feed RSS, e sufficiente cliccare sul link “get as rss”. Tra le altre
                 `
caratteristiche, e possibile condividere tale pipe all’interno della propria pagina personale di Yahoo
e di Google; baster` cliccare sopra gli appositi link, visibili nella parte superiore della figura 3.9.
                     a

    BabelFish

   Il secondo esempio descrive brevemente un particolare modulo presente all’interno di Yahoo!
Pipes, BabelFish, il traduttore online di Yahoo. Questo modulo utilizza come elementi il titolo e la
descrizione di un RSS feed, e li traduce.

    Nelle figure 3.10 e 3.11 vengono mostrate rispettivamente i singoli moduli all’interno dell’edi-
tor mentre nell’altra il risultato della pipe.




                         Figura 3.10: La pipe all’interno dell’editor grafico
3.3. Gli esempi                                      22




                  Figura 3.11: L’output della pipe
Capitolo    4
Conclusioni

               `
Yahoo! Pipes e’ un servizio web con un’interfaccia grafica user friendly che permette, agli utenti
senza particolari conoscenze di programmazione, di assemblare web services abbastanza comples-
si.

    Risulta possibile utilizzare dati ottenuti da fonti aperte, pubblicate attraverso i formati di RSS
(Really Simple Syndication) o accessibili attraverso API (Application Programming Interfaces) ,
manipolarle ed aggregarle usando operatori logici, funzioni per filtrare i contenuti, concatenare
stringhe, estrarre informazioni utili per la georeferenziazione, introdurre informazioni da parte
degli utenti.

                 `
    Il risultato e un servizio web personalizzato, disponibile in formato RSS utile per essere inte-
grato nelle proprie applicazioni web.

    Yahoo! Pipes pu` rappresentare, dunque, uno dei primi esempi di Web 3.0, dove le informa-
                      o
zioni pubblicate dagli utenti devono poter interagire tra loro. Se, infatti, nel web 2.0 gli utenti
possono diventare protagonisti dell’informazione essenzialmente lineare, ovvero pubblicando le
proprio foto e attivit` sul web, qui possono diventare creatori di spazi e applicazioni multimediali
                      a
da condividere (come oggi si fa con le informazioni) con persone che abbiano gli stessi interessi
o all’interno di social network dedicati; si pu` parlare di ponte tra comunit` di sviluppo e social
                                               o                               a
network.

   L’informazione da lineare diventerebbe cos` multimediale e alla portata di tutti.
                                             ı




                                                 23
Bibliografia


Abramo VIncenzi (2009). Api. http://www.tesionline.it/default/glossario.jsp?GlossarioID=1940.

Ciro Zambrano (2009). Mash-up.

Dalke Scientific (2009). Screen scraper.

Daniele Citterio (2008). Mashup: diamo un contesto all’informazione.

Google (2009). http://code.google.com/intl/it-IT/gme/.

Linkedin (2009). Featured applications. http://www.linkedin.com/apps.

Mauro Rossi (2009). Glossario di informatica e internet. http://www.maurorossi.net/glossario/.

Microsoft (2009). http://www.popfly.com/.

Universit` degli studi di Trieste (2009).
          a                                     Formati di sindacazione dei contenuti web.
  http://sindacazione.altervista.org.

Yahoo! (2009). http://pipes.yahoo.com/pipes/docs.




                                               24

More Related Content

What's hot

Glossario di social media marketing
Glossario di social media marketingGlossario di social media marketing
Glossario di social media marketingfrancescoantonacci
 
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...Comune di Saluzzo
 
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...Xhoi Kerbizi
 
Web2.0 e nuovi media
Web2.0 e nuovi mediaWeb2.0 e nuovi media
Web2.0 e nuovi mediaCarlo Vaccari
 

What's hot (6)

Relazione
RelazioneRelazione
Relazione
 
Glossario di social media marketing
Glossario di social media marketingGlossario di social media marketing
Glossario di social media marketing
 
BEEing
BEEingBEEing
BEEing
 
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...
DigitaSaluzzo - Presentazione del percorso di formazione sui social media. Av...
 
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...
Realizzazione di un ChatBot sulla piattaforma Messenger di Facebook per l'inf...
 
Web2.0 e nuovi media
Web2.0 e nuovi mediaWeb2.0 e nuovi media
Web2.0 e nuovi media
 

Viewers also liked

Open Innovation in Trentino?Un'analisi preliminare
Open Innovation in Trentino?Un'analisi preliminareOpen Innovation in Trentino?Un'analisi preliminare
Open Innovation in Trentino?Un'analisi preliminareAlessandro Trentin
 
Il progetto Open Data in Trentino
Il progetto Open Data in TrentinoIl progetto Open Data in Trentino
Il progetto Open Data in Trentinodatitrentinoit
 
Open Data in Trentino - SOD13
Open Data in Trentino - SOD13Open Data in Trentino - SOD13
Open Data in Trentino - SOD13Marco Combetto
 
Open Data in Trentino, Lessons learned and shareable practices. Organization...
Open Data in Trentino, Lessons learned and shareable practices.  Organization...Open Data in Trentino, Lessons learned and shareable practices.  Organization...
Open Data in Trentino, Lessons learned and shareable practices. Organization...datitrentinoit
 
Open Data per la Crescita: Come in Trentino si sta facendo Open Data
Open Data per la Crescita: Come in Trentino si sta facendo Open DataOpen Data per la Crescita: Come in Trentino si sta facendo Open Data
Open Data per la Crescita: Come in Trentino si sta facendo Open Datadatitrentinoit
 
Trentino Open Data Challenge - ICT Days 2014
Trentino Open Data Challenge -  ICT Days 2014 Trentino Open Data Challenge -  ICT Days 2014
Trentino Open Data Challenge - ICT Days 2014 Francesca De Chiara
 
Open data 200 Italy - ODI Summit London 3 November 2015
Open data 200 Italy - ODI Summit London 3 November 2015Open data 200 Italy - ODI Summit London 3 November 2015
Open data 200 Italy - ODI Summit London 3 November 2015Francesca De Chiara
 
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...Michele Ceresoli
 
Dataset prodotti "manualmente"
Dataset prodotti "manualmente"Dataset prodotti "manualmente"
Dataset prodotti "manualmente"datitrentinoit
 

Viewers also liked (12)

Compas Project
Compas ProjectCompas Project
Compas Project
 
Open Innovation in Trentino?Un'analisi preliminare
Open Innovation in Trentino?Un'analisi preliminareOpen Innovation in Trentino?Un'analisi preliminare
Open Innovation in Trentino?Un'analisi preliminare
 
Alessandro Trentin
Alessandro TrentinAlessandro Trentin
Alessandro Trentin
 
Il progetto Open Data in Trentino
Il progetto Open Data in TrentinoIl progetto Open Data in Trentino
Il progetto Open Data in Trentino
 
Open Data in Trentino - SOD13
Open Data in Trentino - SOD13Open Data in Trentino - SOD13
Open Data in Trentino - SOD13
 
Open Data in Trentino, Lessons learned and shareable practices. Organization...
Open Data in Trentino, Lessons learned and shareable practices.  Organization...Open Data in Trentino, Lessons learned and shareable practices.  Organization...
Open Data in Trentino, Lessons learned and shareable practices. Organization...
 
Open Data in Trentino - Corso Trentino School of Management (TSM)
Open Data in Trentino - Corso Trentino School of Management (TSM)Open Data in Trentino - Corso Trentino School of Management (TSM)
Open Data in Trentino - Corso Trentino School of Management (TSM)
 
Open Data per la Crescita: Come in Trentino si sta facendo Open Data
Open Data per la Crescita: Come in Trentino si sta facendo Open DataOpen Data per la Crescita: Come in Trentino si sta facendo Open Data
Open Data per la Crescita: Come in Trentino si sta facendo Open Data
 
Trentino Open Data Challenge - ICT Days 2014
Trentino Open Data Challenge -  ICT Days 2014 Trentino Open Data Challenge -  ICT Days 2014
Trentino Open Data Challenge - ICT Days 2014
 
Open data 200 Italy - ODI Summit London 3 November 2015
Open data 200 Italy - ODI Summit London 3 November 2015Open data 200 Italy - ODI Summit London 3 November 2015
Open data 200 Italy - ODI Summit London 3 November 2015
 
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...
Open Innovation e Social Media: un indagine sullo stato del paradigma nelle a...
 
Dataset prodotti "manualmente"
Dataset prodotti "manualmente"Dataset prodotti "manualmente"
Dataset prodotti "manualmente"
 

Similar to Applicazioni ICT

La rivoluzione del web 2.0
La rivoluzione del web 2.0La rivoluzione del web 2.0
La rivoluzione del web 2.0Luca Mascaro
 
Web 2.0 e semplicità
Web 2.0 e semplicitàWeb 2.0 e semplicità
Web 2.0 e semplicitàguestf44f11
 
Il web 2.0: dal web informativo al web emozionale
Il web 2.0: dal web informativo al web emozionaleIl web 2.0: dal web informativo al web emozionale
Il web 2.0: dal web informativo al web emozionaleAldo Torrebruno
 
Applicazioni web e SaaS, considerazioni. [Report]
Applicazioni web e SaaS, considerazioni. [Report]Applicazioni web e SaaS, considerazioni. [Report]
Applicazioni web e SaaS, considerazioni. [Report]Claudio Rava
 
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativi
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativiWeb2.0: strumenti e tecnologie per la realizzazione di servizi innovativi
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativiSerenaS
 
Cefriel Della Valle Web 2.0 And Soa Bif
Cefriel Della Valle Web 2.0 And Soa BifCefriel Della Valle Web 2.0 And Soa Bif
Cefriel Della Valle Web 2.0 And Soa BifEmanuele Della Valle
 
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY  IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY Alessandro Bozzo
 
La rivoluzione dei Microservizi
La rivoluzione dei MicroserviziLa rivoluzione dei Microservizi
La rivoluzione dei MicroserviziitalianaSoftware
 
Web e Web 2.0 Storia dell'evoluzione delle opportunità della rete
Web e Web 2.0 Storia dell'evoluzione delle opportunità della reteWeb e Web 2.0 Storia dell'evoluzione delle opportunità della rete
Web e Web 2.0 Storia dell'evoluzione delle opportunità della reteph5
 
Web 2.0 e strategie di Web Marketing
Web 2.0 e strategie di Web MarketingWeb 2.0 e strategie di Web Marketing
Web 2.0 e strategie di Web MarketingLuigi Sciolti
 
Didattica Multimediale 1
Didattica Multimediale 1Didattica Multimediale 1
Didattica Multimediale 1sandraslide
 
Applicazioni Integrabili - Laboratorio di Interaction Design
Applicazioni Integrabili - Laboratorio di Interaction DesignApplicazioni Integrabili - Laboratorio di Interaction Design
Applicazioni Integrabili - Laboratorio di Interaction DesignRoberto Buono
 

Similar to Applicazioni ICT (20)

La rivoluzione del web 2.0
La rivoluzione del web 2.0La rivoluzione del web 2.0
La rivoluzione del web 2.0
 
Web 2.0 e semplicità
Web 2.0 e semplicitàWeb 2.0 e semplicità
Web 2.0 e semplicità
 
Il web 2.0: dal web informativo al web emozionale
Il web 2.0: dal web informativo al web emozionaleIl web 2.0: dal web informativo al web emozionale
Il web 2.0: dal web informativo al web emozionale
 
Applicazioni web e SaaS, considerazioni. [Report]
Applicazioni web e SaaS, considerazioni. [Report]Applicazioni web e SaaS, considerazioni. [Report]
Applicazioni web e SaaS, considerazioni. [Report]
 
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativi
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativiWeb2.0: strumenti e tecnologie per la realizzazione di servizi innovativi
Web2.0: strumenti e tecnologie per la realizzazione di servizi innovativi
 
Cefriel Della Valle Web 2.0 And Soa Bif
Cefriel Della Valle Web 2.0 And Soa BifCefriel Della Valle Web 2.0 And Soa Bif
Cefriel Della Valle Web 2.0 And Soa Bif
 
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY  IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY
IL FENOMENO DELL’ENTERPRISE 2.0 SOTTO LA LENTE DELL’ACTOR-NETWORK THEORY
 
Web2.0
Web2.0Web2.0
Web2.0
 
IC2008 Information R-Evolution
IC2008 Information  R-EvolutionIC2008 Information  R-Evolution
IC2008 Information R-Evolution
 
IC2009 Information R-Evolution
IC2009 Information R-EvolutionIC2009 Information R-Evolution
IC2009 Information R-Evolution
 
La rivoluzione dei Microservizi
La rivoluzione dei MicroserviziLa rivoluzione dei Microservizi
La rivoluzione dei Microservizi
 
Web e Web 2.0 Storia dell'evoluzione delle opportunità della rete
Web e Web 2.0 Storia dell'evoluzione delle opportunità della reteWeb e Web 2.0 Storia dell'evoluzione delle opportunità della rete
Web e Web 2.0 Storia dell'evoluzione delle opportunità della rete
 
Web20
Web20Web20
Web20
 
Web2.0.2008
Web2.0.2008Web2.0.2008
Web2.0.2008
 
Presentazione Wave37
Presentazione Wave37Presentazione Wave37
Presentazione Wave37
 
Web 2.0 dirigenti
Web 2.0 dirigentiWeb 2.0 dirigenti
Web 2.0 dirigenti
 
Web 2.0 e strategie di Web Marketing
Web 2.0 e strategie di Web MarketingWeb 2.0 e strategie di Web Marketing
Web 2.0 e strategie di Web Marketing
 
Didattica Multimediale 1
Didattica Multimediale 1Didattica Multimediale 1
Didattica Multimediale 1
 
Applicazioni Integrabili - Laboratorio di Interaction Design
Applicazioni Integrabili - Laboratorio di Interaction DesignApplicazioni Integrabili - Laboratorio di Interaction Design
Applicazioni Integrabili - Laboratorio di Interaction Design
 
Conclusioni del corso
Conclusioni del corsoConclusioni del corso
Conclusioni del corso
 

Applicazioni ICT

  • 1. ` UNIVERSITA DEGLI STUDI DI TRENTO ` FACOLT A DI E CONOMIA C ORSO DI L AUREA IN N ET-E CONOMY. T ECNOLOGIA E MANAGEMENT DELL’ INFORMAZIONE E DELLA CONOSCENZA Applicazioni ICT: il Mash-up Autore Alessandro Trentin Matricola 126134 A NNO ACCADEMICO (2008-2009)
  • 2. Indice 1 Il concetto 1 1.1 Mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.1 Le API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1.2 Caratteristiche mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.3 Tecnologie e strumenti a supporto dei mash-up . . . . . . . . . . . . . . . 4 1.1.4 Tipologie di mash-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2 Applicazioni di mash-up 6 2.1 Google Mashup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.1 Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 Microsoft Popfly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.1 Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.3 Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.1 Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3 Yahoo Pipes 14 3.1 I moduli di Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2 L’editor di Yahoo! Pipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3 Gli esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4 Conclusioni 23 i
  • 3. Capitolo 1 Il concetto 1.1 Mash-up Gli strumenti Web 2.0 stanno modificando radicalmente il nostro modo di comunicare sul Web. Chiunque pu` realizzare un blog in una manciata di minuti e pubblicare video online con estrema o a u ` facilit` . Ancor pi` semplice e l’adesione ad un social network. Sia che si parli di social network dedicati ai rapporti personali e al tempo libero come Facebook o MySpace, sia che ci si riferisca a quelli che nascono con scopi professionali come LinkedIn, sempre pi` persone si iscrivono a u questi servizi di comunicazione 2.0. Da un lato, quindi, abbiamo queste piattaforme che rendono molto semplice la pubblicazione di testi, immagini e video, e dall’altro abbiamo gli internauti, che, muovendosi con disinvoltura tra i vari servizi, lasciano tracce sparse della propria identit` tra un a ` social network e l’altro. La conseguenza immediata e la frammentazione della propria presenza on-line in diversi punti del Web. Vista la frequenza con cui la nostra identit` on-line si ristruttura, a si aggiorna e arricchisce di nuovi contenuti multimediali, l’idea stessa di sito personale statico in cui raccogliere le informazioni e i contributi multimediali che ci riguardano diventa improponibile: aggiornarlo richiederebbe troppo tempo. 1.1.1 Le API ` In progetti software molto vasti, specialmente dove e attesa e desiderata l’interazione tra diversi ` programmi, e necessario sviluppare interfacce per la programmazione dell’applicazione (API, Ap- plication Programming Interfaces) ben definite. Si pu` pensare alle API come a standard validi in o un ambiente di programmazione, ma anche e soprattutto ad un insieme di procedure disponibili ad un programmatore, che possono essere riutilizzate al momento dello sviluppo di un’applicazione. 1
  • 4. 1.1. Mash-up 2 ` L’utilizzo delle API e quindi un metodo per ottenere un’astrazione tra hardware e programmatore, o tra software a basso ed alto livello, che permette agli sviluppatori di non dover riscrivere per ogni applicativo tutte le funzioni di base e di riprogettare o migliorare le funzioni all’interno dell’API senza cambiare il codice che si affida ad essa (Abramo VIncenzi, 2009). 1.1.2 Caratteristiche mash-up La soluzione per gestire la complessit` e la frammentariet` della nostra identit` digitale on-line si a a a chiama mash-Up, parola che indica la possibilit` tecnica di aggregare informazioni e servizi offerti a da diversi siti in singole pagine Web (Daniele Citterio, 2008). Le combinazioni sono pressoch´ e infinite. Il significato di mash-up viene spesso spiegato in italiano indicando che, letteramente, vuol ` dire poltiglia. Forse e un po’ riduttivo: poltiglia pu` avere connotazioni negative mentre in genere o con un’azione di mashing up si riduce tutto a pezzetti per ottenere qualcosa che ha una consistenza omogenea (Mauro Rossi, 2009). ` In inglese il termine mash-up si e diffuso inizialmente nel campo della pop music. Quando si usa la musica di una o pi` canzoni, le parole di altre e le si mixa insieme per creare una nuova u ` canzone si fa un mash-up. Un mash-up e dunque un pastone di elementi diversi con cui si creano, a loro volta, nuovi elementi. ` Trasferendo il concetto dalla pop music, un mash-up e una fusione dei contenuti o dei servizi di una o pi` applicazioni Web che d` vita ad una nuova applicazione Web. u a I mash-up uniscono alcune delle istanze pi` innovatrici del Web 2.0: la visione della rete come u una piattaforma in cui, grazie a protocolli condivisi, le applicazioni sono in grado di comunicare fra loro, la tendenza da parte dei siti pi` noti, come Google, eBay o Yahoo!, di rendere disponibili u liberamente i propri contenuti e servizi e la partecipazione di utenti e sviluppatori che sempre pi` u ` diventano creatori indipendenti di contenuti. L’unione di questi servizi e reso possibile dall’uso delle API, ossia dalle interfacce pubbliche di programmazione che molti siti rilasciano gratuita- ` mente per la creativit` degli sviluppatori (Daniele Citterio, 2008). Google Maps e uno dei servizi a pi` utilizzati per i mash-up, ma gli esempi non mancano per YouTube e per decine di altri servizi. u ` Un esempio emblematico di questa tendenza e il network professionale LinkedIn che ha lan- ciato un nuovo servizio che va sotto il nome di “Applications”. Questa funzionalit` d` agli utenti la a a possibilit` di integrare all’interno del proprio profilo informazioni provenienti da una serie di piat- a taforme esterne. Si possono in tal modo inserire ed aggiornare automaticamente: i post del proprio blog gestito con Wordpress, presentazioni condivise online con Google Presentation o SlideShare,
  • 5. 1.1. Mash-up 3 informazioni sui propri viaggi gestite con My Travel, i post dei propri blog preferiti tramite Blog Link, ed altro ancora. Le ragioni che hanno spinto LinkedIn verso questo passo sono condensate in questa frase pub- blicata sul sito: “LinkedIn Applications enable you to enrich your profile, share and collaborate with your network, and get the key insights that help you be more effective“ (Linkedin, 2009). Per creare un mash-up si utilizzano di solito le API rilasciate liberamente dalle diverse appli- cazioni di cui si vogliono unire i servizi. Le API offrono dei protocolli, ossia un set di istruzioni e formati di dati, che vanno gestite attraverso i tipici linguaggi di programmazione Web come PHP o ASP.Net. Per utenti non interessati o comunque non in grado di utilizzare i linguaggi di programmazione, pu` utilizzare alcuni servizi che permettono di creare mash-up in modalit` o a visuale: • Google Mash-up Editor, pi` indicato per sviluppatori; u • Microsoft Popfly, basato quasi completamente su interazioni con il mouse; • Yahoo! Pipes, completo ma non completamente intuitivo per gli utenti che si affacciano per la prima volta verso l’utilizzo di questa tipo di applicazione. In sostanza, con l’utilizzo di mash-up, si vogliono raggiungere tre obiettivi: • rendere i profili degli utenti sempre pi` ricchi e completi; u • favorire la collaborazione e la condivisione di informazioni tra network; • (conseguenza dei primi due punti), consentire un utilizzo della piattaforma sempre pi` effi- u ciente. Riassumendo, la popolarit` del mash-up proviene da: a • Capacit` di fornire interattivit` all’utente e alle applicazioni; a a • Capacit` di aggregare e reinventare gli insiemi di dati prodotti da terzi. a ` Quindi, ne consegue che un sito web fatto grazie ai mash-up e in grado di ricevere contenu- ti e funzionalit` da sorgenti di dati che giacciono esternamente ai suoi confini organizzativi. Ne a consegue un allargamento del suo contesto di informazione, una correlazione dell’informazione, intesa come capacit` di unire contenuti provenienti da fonti non correlate, un informazione mag- a giormente strutturata, grazie ad una visione pi` ampia del contesto di collocazione della singola u informazione.
  • 6. 1.1. Mash-up 4 1.1.3 Tecnologie e strumenti a supporto dei mash-up Questa sezione fornisce una panoramica delle nuove tecnologie che stanno facilitando lo sviluppo dei mash-up. Screen Scraping : lo scraping risulta essere il processo che utilizza degli strumenti software per analizzare il contenuto originalmente creato per essere letto dalle persone con la finalit` di a estrarne strutture di dati semantici che rappresentano queste informazioni di modo tale da utilizzarle e manipolarle in maniera pragmatica (Dalke Scientific, 2009). RSS : un feed RSS e un formato di sindacazione1 della famiglia XML-based. In quest’ambito, ` la sindacazione implica che un sito web che vuole distribuire contenuto crea un documento RSS e invia il documento attraverso un RSS publisher. Un client abilitato RSS pu` con- o trollare il feed dell’editore publisher per sapere se c’` nuovo contenuto e decidere di agire e ` di conseguenza. La tecnologia RSS e stata adottata per sindacare contenuto di vario tipo, da articoli e titoli di notizie, ai cambiamenti nelle pagine wiki, o nei dati audiovisuali come programmi radio. Gli RSS sono un’ottima e semplice modalit` di prendere il contenuto dal a web e portarlo in un’unica destinazione di navigazione. Quasi tutti i tipi di contenuto web possono essere sindacati utilizzando gli RSS. Si Pensi ad una serie di tubi che inviano infor- mazioni da un posto all’altro – non importa di che tipo di dati si tratta, basta che abbia un RSS feed (Universit` degli studi di Trieste, 2009). a ATOM : Atom e un protocollo di sindacazione simile al feed RSS, ma pi` recente. E’ stato ` u proposto come standard alla Internet Engineering Task Force (IETF) e cerca di mantenere metadati migliori rispetto alla tecnologia RSS, fornendo una documentazione migliore e pi` u rigorosa, e che incorpora la nozione di costrutto per la rappresentazione comune dei dati (Universit` degli studi di Trieste, 2009). a GEORSS : Valgono tutte le considerazioni fatte per il feed rss. L’elemento di distinguo e che ` un feed GEORSS contiene anche l’informazione sulla posizione geografica (latitudine e lon- gitudine) di ogni singolo elemento del Feed. Nello specifico: GEORSS = RSS + (lat e long). 1.1.4 Tipologie di mash-up Le principali tipologie di mash-up sono (Ciro Zambrano, 2009): 1 Per sindacazione si intende originariamente la possibilit` offerta da un fornitore di contenuti informativi di ri- a cevere automaticamente ed eventualmente ripubblicare le informazioni da esso prodotte; un formato di sindacazione scandaglia le i componenti delle informazioni fornendo all’utente un’anteprima degli aggiornamenti apportati.
  • 7. 1.1. Mash-up 5 Mapping : tutti i dati che contengono anche informazioni geografiche possono essere rappresen- tati attraverso l’uso delle mappe. Uno degli eventi che ha catalizzato l’avvento dei mash-up ` e stato l’introduzione da parte di Google delle Google Maps API. Il fatto che queste API fossero pubbliche ed aperte ha permesso agli sviluppatori web di mescolare tutti questi tipi di dati e di mostrarli su delle mappe. Tanto per non essere da meno, anche altre societ` han- a no seguito questo esempio, vedi Microsoft (con Virtual Earth), Yahoo (con Yahoo Maps), e AOL (MapQuest). Un altro strumento messo a disposizione degli utenti per il mashup ` del dato geolocalizzato e il GEORSS. Il mapping effettua il mashing dei contenuti con la cartografia sfruttando le meta-informazione2 latitudine e longitudine. Video e foto : l’emergere di fenomeni come siti di foto hosting e social networking come Flickr con le API disponibili hanno permesso una variet` incredibile di mash-up. Grazie al fatto a che coloro che caricano le foto, vi associano dei metadati come, per esempio, chi ha scattato ` la foto, cosa rappresenta la foto, quando e dove e stata scattata, coloro che ideano i mash-up possono unire le foto con altre informazioni che possono essere associate con i metadati. Per esempio, un mash-up potrebbe visualizzare un grafico del social networking basandosi sui metadati pi` comuni nelle foto (soggetto, data di scatto, ed altri metadati). u Ricerca e shopping : i mash-up per la ricerca e lo shopping esistevano ancor prima che il termine mash-up fosse coniato. Prima dei giorni delle Web API, esistevano strumenti come BizRate, PriceGrabber, MySimon, e Google’s Froogle che sfruttavano una combinazione di tecnolo- gie business-to-business (b2b) e screen-scraping per aggregare e confrontare i prezzi di ci` o che l’utente voleva acquistare. News : le fonti di news (come New York Times, BBC o Reuters) utilizzano le tecnologie per la sin- dacazione dei contenuti come gli RSS e Atom sin dal 2002 per diffondere news informative su vari argomenti. I mash-up per la sindacazione dei feed possono aggregare i feed dell’utente e presentarli sul Web, creando un giornale personalizzato che si rivolge a particolari interessi dei lettori. 2 Le meta-informazioni sono di fondamentale importanza in quanto consento la correlazione quindi il mash-up dei contenuti
  • 8. Capitolo 2 Applicazioni di mash-up 2.1 Google Mashup Editor Figura 2.1: Schermata iniziale di Google Mashup Editor Google ha presentato Mashup Editor (Google, 2009), diretto concorrente di Microsoft PopFly e di Yahoo! Pipes, che permette di creare applicazioni su interfaccia Ajax. Google Mashup Editor 6
  • 9. 2.1. Google Mashup Editor 7 ` (figura 2.1) e una piattaforma per creare mash-up in modo estremamente semplice. Questa piat- taforma mette a disposizione un’ambiente di sviluppo interattivo, che permette agli sviluppatori ` di modificare, compilare e gestire le proprie applicazioni. Questo Editor e basato sulla tecnologia Ajax1 : infatti, mette a disposizione dell’utente delle API, basate su tecnologia AJAX, in modo da ricreare situazioni del tutto simili graficamente alle applicazioni Google e consentendo, inoltre, di inserire all’interno della propria web application prodotti come Google Maps o Google Calendar personalizzati a seconda dell’esigenze dell’utente. Il tutto basato sulle tecnologie XML, JavaScript, CSS e HTML. Una volta fatte le loro applicazioni, gli utenti possono provarle in una Sandbox2 , che ne permette il debug, e quindi decidere di pubblicarle sotto il dominio googlemashups.com. ` Google Mashup Editor e un mash-up editor che, rispetto ai prodotti di Yahoo e Microsoft, limita la costruzione di un’applicazione alle informazioni pubblicate da un feed RSS. Quindi l’utilizzo di ` Google Mashup e demandato ad utenti che abbiamo una buona familiarit` sia con i prodotti Google a che con i principi di programmazione web. 2.1.1 Considerazioni ` Google Mashup e in grado di agganciarsi a un feed RSS (quindi non qualunque webservice) e pre- sentare i contenuti con un’interfaccia grafica web evolutissima, tipo GMAIL per fare un esempio. ` ` La cosa spettacolare di Google Mashup e che e un ambiente di sviluppo per applicazioni web, ` che e a sua volta un’applicazione web. L’editor, il compilatore, l’interfaccia per la pubblicazione o` dell’applicazione, il sistema di controllo di versione: tutto ci` e web. Oltre a questo Google Mashup mette a disposizione delle API interessanti, in particolare quelle ` per la costruzione della GUI e per la persistenza dei dati. Inoltre e possibile accedere ad altre API di google, come quelle di google maps o quelle di google calendar. ` Insomma, Google Mashup e uno strumento per sviluppatori che vogliono costruire un’applica- zione a partire dalle informazioni pubblicate da un feed RSS. Ma se io voglio fare un’applicazione utilizzando le informazioni che mi restuisce un webser- 1 ` acronimo di Asynchronous JavaScript and XML, e uno strumento di sviluppo per la realizzazione di applicazioni web interattive (Rich Internet Application). La tecnologia AJAX si basa su uno scambio di dati in background fra web browser e server, che consente l’aggiornamento dinamico di una pagina web senza esplicito ricaricamento da parte dell’utent 2 Periodo iniziale di una pagina nei risultati di ricerca nel quale la pagina o l’intero sito prevede un periodo di ` latenza nel quale il posizionamento (ranking) non e perfettamente performante. Dopo un certo periodo di valutazione da parte degli engines la pagina acquisisce una certa rilevanza e posizionamento all’interno della SERP3
  • 10. 2.2. Microsoft Popfly 8 vice (come ad esempio le API di Flickr), con Google Mashup non posso fare niente. Inoltre, il ` ` programma e in versione beta, e il suo utilizzo e limitato e solo su invito. 2.2 Microsoft Popfly Figura 2.2: Schermata iniziale di Microsoft PopFly Microsoft PopFly (Microsoft, 2009) (figura 2.2) una applicazione che la stessa Microsoft ha definito come un sistema per creare pagine web e mash-up partendo da materiale gi` esistente in a rete o creato appositamente in maniera semplice ed intuitiva. Infatti, PopFly non richiede nessuna conoscenza di programmazione e neppure di un ambiente di programmazione da scaricare. E’ infatti una applicazione web-based che funziona direttamente su tutti i browser. ` Per poter utilizzare tale strumento e necessario avere un account, Hotmail, per poter accedere ` al servizio. Inoltre e richiesta l’installazione dell’ambiente di runtime Silverlight. o ` Si pu` affermare che questa applicazione e stata creata appositamente per dare la possibilit` a a tutti gli utenti (anche i meno esperti), di poter realizzare applicazioni, mash-ups, gadgets, pa- gine Web e applicazioni in maniera semplice e intuitiva, tramite passaggi automatici e strumenti visuali, senza il bisogno di conoscere il codice di programmazione. PopFly si prefigge di rendere facilmente interfacciabili contenuti disponibili da varie fonti web. I video dei pi` comuni sistemi u
  • 11. 2.2. Microsoft Popfly 9 di sharing, le foto di Flikr, i contenuti blog di MySpace o le mappe di Virtual Earth possono essere combinate dall’utente per realizzare un componente personalizzato. Si pu` affermare che PopFly o ` u e pi` orientata ai contenuti multimediali, quali video, immagini e giochi anche se tuttavia sono presenti anche moduli che estraggono dati da altri servizi per fornire news, mappe e link a siti di shop on line. ` Connettendo tra loro i vari block, e quindi le relative sorgenti di dati, e ad esempio possibile sfruttare le mappe di Vitual Earth e i dati di GeoNames per localizzare i contatti di Twitter. ` Popfly e basato su Silverlight, un plug-in cross-browser e cross-platform capace di gestire immagini, testo, animazioni, audio e video; realizzato dalla stessa Microsoft, viene definito come l’anti-Flash di Adobe per eccellenza. La restante parte, quindi non riferita a Silverlight, consiste di un insieme di informazioni in- terconnesse con semplici click e drag&drop, il che rende l’applicazione utilizzabile da chiunque e graficamente appetibile per combinare in modo drasticamente pi` curioso i propri materiali. u Popfly si divide in due macrosezioni: • da una parte si trova il “Creator“, ovvero la parte attiva in cui si ricombinano gli elementi per creare il proprio mash-up o la propria pagina web. ` Creator e in effetti l’ambiente dove si crea la propria applicazione, la propria pagina web o la propria animazione semplicemente. In essa si trovano (o si possono realizzare ad hoc per chi conosce la programmazione) i componenti chiamati “block“ che non sono altro che elementi visuali, come ad esempio foto, video, pagine web, animazioni i quali possono essere ricom- posti ed usati a proprio piacere semplicemente trascinandoli e rilasciandoli. L’azienda ha affermato che altri blocchi third-party saranno offerti prossimamente ed tutti gli sviluppatori potranno crearli autonomamente sfruttando Silverlight. Microsoft prevede di offrire Popfly gratuitamente, ma certi “building block“ third-party potranno richiedere un abbonamento a pagamento ed altri saranno ristretti al solo uso non-commerciale. Sebbene Popfly Creator non richieda alcuna conoscenza di programmazione, gli sviluppatori possono personalizzare il codice della pagina utilizzando HTML, CSS o JavaScript. Possono inoltre contribuire alla creazione di nuovi block utilizzando il Block Builder SDK. Tramite il plug-in Popfly Explo- rer gli utenti di Visual Studio Express possono infine utilizzare il nuovo servizio di Microsoft per condividere le proprie applicazioni web-based. • dall’altra parte invece troviamo lo “Spaces“, ovvero il luogo in cui depositare e condividere i propri materiali e le proprie creazioni. L’aspetto sociale gioca un ruolo centrale nel progetto. Popfly Space permette agli utenti di connettersi ai creatori di altre applicazioni, tutte con-
  • 12. 2.2. Microsoft Popfly 10 servate sui server Microsoft. All’interno di questo social network gli utenti Popfly possono condividere, votare, commentare ed anche “remixare“ le creazioni di altri utenti. ` Il grande valore aggiunto di Popfly e la capacit` di rendere le API dei vari servizi web-based a esistenti (da Flickr a Twitter, con una lunga schiera di altri servizi gi` inclusa) un elemento utiliz- a zabile senza alcuna conoscenza particolare: l’interfaccia provvede a tutto e l’utente deve limitare il proprio intervento a scelte ed azioni di comando. Quindi, le caratteristiche principali di questo strumento di Microsoft sono la facilit` di uso, la possibilit` di creare animazioni e molto altro con a a semplici movimenti del mouse (del tipo copia e incolla e trascina). Microsoft Silverlight Microsoft Corp. ha annunciato Silverlight, un nuovo plug-in tecnologico disponibile per diffe- renti browser e piattaforme, che consente di offrire agli utenti innovative esperienze multimediali e realizzare applicazioni Web altamente interattive. Le prime societ` che hanno dichiarato di avva- a lersi di questa nuova tecnologia sono Akamai Technologies Inc., Brightcove Inc., Eyeblaster Inc., Limelight Networks, Major League Baseball e Netflix Inc. La nuova tecnologia sar` presentata in a anteprima a Milano durante Remix, conferenza gratuita tenuta da esperti Microsoft internazionali. Per maggiori informazioni visitare www.microsoft.it/msdn/remix Microsoft Silverlight, chiamato in precedenza WPF/E (Windows Presentation Foundation Eve- rywhere), si integra con le esistenti tecnologie Web e consente di fornire contenuti multimediali di alta qualit` riducendo i costi. Silverlight viene fornito agli utenti finali tramite un’installazione a rapida e semplice e permette di utilizzare sia sistemi Macintosh che Windows attraverso numerosi browser Web, fra cui Internet Explorer, Firefox e Safari. I fornitori di contenuti cercano un modo per fornire applicazioni altamente interattive utilizzando gli strumenti e le competenze che gi` pos- a siedono. Sono alla ricerca di una soluzione completa che consenta di raggiungere rapidamente pi` u piattaforme con costi di implementazione ragionevoli, ha dichiarato Bob Muglia, Vicepresiden- te senior della divisione Server and Tools di Microsoft. Microsoft Silverlight punta a soddisfare ` questa esigenza e costituisce un vero e proprio passo avanti per il settore. Silverlight e l’unica soluzione disponibile oggi sul mercato che consente ai creatori di contenuti di inserirsi nell’ampio ecosistema di tecnologie Windows Media portando a nuovi livelli l’esperienza interattiva sul Web. 2.2.1 Considerazioni La forza del progetto di Microsoft, e l’aspetto che lo diversifica dal simile strumento di Yahoo, ` ` “Pipes“, e la facilit` con cui e possibile eseguire le varie procedure, senza alcun know-how tecnico a o esperienza di sviluppo. A prima vista, PopFly sembra essere quello con la grafica pi` accattivante u
  • 13. 2.3. Yahoo! Pipes 11 e che promette di permetter di sviluppare dei “mash-up“ senza essere uno sviluppatore. Quello ` ` che un po’ stride con PopFly, e la e la naturale interpretazione del Web 2.0 di Microsoft: per ` usare Popfly bisogna scaricarsi Microsoft Silverlight, che e il modo di Microsoft di reinventarsi Macromedia Flash e il formato SVG. ` Quindi, concludendo, la creazione dei mash-up e effettivamente semplice e abbastanza intui- tiva, ma probabilmente c’` spazio per ulteriori migliorie in questo senso. Sicuramente ci sono un e po’ di particolari da sistemare all’interno del designer visuale, sia in termini di usabilit` che di a presentazione. Da sottolineare, tra i blocchi ufficiali creati dal team di sviluppo si possono notare diversi, almeno 6, riguardanti applicazioni Yahoo!, eppure di blocchi con applicazioni Google non c’` e nemmeno l’ombra. 2.3 Yahoo! Pipes Figura 2.3: Schermata iniziale di Yahoo! Pipes Yahoo! Pipes (Yahoo!, 2009) rappresenta, insieme alle altre applicazioni sopra descritte, uno dei migliori prodotti per la creazione di mash-up attualmente presenti sul web. Per accedervi e ` ` sufficiente possedere un account Yahoo (gratuito) ed e adatto per qualsiasi tipo di piattaforma ` (Linux, Windows, Mac). Yahoo! Pipes e un ambiente di sviluppo semplicissimo (figura 2.3): ` utilizzando un editor visuale nel proprio browser e possibile pubblicare e condividere servizi senza ` essere necessariamente dei programmatori. Per costruire il proprio mash-up e sufficiente trascinare
  • 14. 2.3. Yahoo! Pipes 12 ` i differenti moduli messi a disposizione e disporne le connessioni. Ogni modulo e specializzato nel reperire informazioni su Internet da una particolare fonte o con una particolare tecnologia, o nell’elaborare le informazioni in ingresso con certe modalit` . Pi` semplicemente, si pu` clonare a u o un mash-up gi` presente sul sito e adatatrlo alle proprie esigenze. a ` Yahoo! Pipes e costituita da un’interfaccia grafica di manipolazione e rielaborazione di feed rss, basata sul principio della pipe, ben noto agli utenti del sistema operativo Unix. In sintesi, una ` pipe e una connessione, un tubo che collega l’output di un comando o di un servizio con l’input di un altro. In questo modo, si possono creare sequenze di comandi.Con Yahoo! Pipes, quindi si possono creare pipe di ogni tipo, prelevando feed, rielaborandoli, filtrandoli e collegandoli con altri servizi. Si tratta di una potente innovazione, diretta alla realizzazione di mashup dei contenuti, tipica del Web 2.0. ` La cosa pi` interessante per il servizio non e semplicemente che aggrega i dati provenienti da u varie fonti, ma che si pu` configurare la pipe o addirittura creare la propria pipe per ottenere i o dati esatti che desiderate. Ogni tubo ha il suo URL univoco, in modo da poter essere facilmente ` condiviso con la famiglia e gli amici. Una volta completato un pipe e possibile salvarlo sul server e richiamarlo per ottenere in output un feed in uno dei seguenti formati: RSS, RDF, JSON o ` Atom. E anche possibile pubblicare il proprio mash-up cos` costruito e condividerlo su Internet, ı permettendo ad altri utenti di crearne dei cloni, aggiungervi ulteriori funzionalit` o utilizzarlo come a componente di un altropipe da loro creato. 2.3.1 Considerazioni Yahoo! Pipes risulta quindi essere un ambiente di sviluppo visuale semplicissimo. Sono dispo- nibili un sacco di blocchetti, che si possono combinare tra di loro unendoli con dei connettori. I blocchetti disponibili sono svariati, dal “Fetch Data“ che permette di recuperare documento XML, ai blocchetti gi` sviluppati per recuperare informazioni da applicazioni diffuse come Flickr o Goo- a gle Base, ai blocchetti per l’elaborazione dei dati (Regex, Split, Reverse, etc.), etc. Il risultato di questo stream di elaborazione viene automaticamente pubblicato in diversi formati (feed RSS, JSON, XML, etc.). Yahoo! Pipes permette quindi di remixare i feed e creare mashup che forniranno nuovi dati in un ambiente grafico visuale che permette con facilit` di ottenere quello che altrimenti richiederebbe a ` notevoli conoscenze nel campo della programmazione. Yahoo! Pipes e veramente un applicazione per mash-up completa, affidabile e di semplice utilizzo. ` A mio giudizio, il servizio Yahoo! Pipes mi e parso pi` flessibile ed espandibile di PopFly u
  • 15. 2.3. Yahoo! Pipes 13 ` (supporta anche Google), anche se e decisamente troppo presto per fare confronti dato che ho li ho utilizzati solo per un breve lasso di tempo.
  • 16. Capitolo 3 Yahoo Pipes In questo capitolo vengono introdotti i moduli di Yahoo! Pipes e presentati i tre pannelli costituenti l’editor presenti all’interno di Yahoo!Pipes. 3.1 I moduli di Yahoo! Pipes I Moduli presenti all’interno dell’editor di Yahoo! Pipes sono raggruppati all’interno di categorie, ciascuna basata su differenti funzionalit` . a Sources : molte pipe utilizzano una data source, nel senso che questo modulo raccoglie i dati da differenti risorse, come per esempio Yahoo Search, Google e Flickr, e li rende disponi- bili all’interno della pipe per una successiva analisi e manipolazione da parte dell’utente, restituendo un RSS feed. User Inputs : questi moduli permettno di definire i parametri della propria pipe; questi input possono essere anche utilizzati per alimentare altri moduli presenti all’interno della propria pipe. Operators : questi moduli trasformano e filtrati il flusso dei dati attraverso la pipe. Per esempio, ` e possibile effettuare ordinamenti, filtraggio delle informazioni, unione di differenti pipe. URL : questo modulo manipola e costruisce gli URL. Come detto, le pipe ottengono i propri dati dal web, e queste risorse sono definite da URL. Molte di queste sono lunghe e complesse. ` Questo modulo mi permette di controllare come una particolare URL e costruita. Questo blocco, per funzionare correttamente, utilizza i parametri presenti nell’URL. Per esempio, 14
  • 17. 3.2. L’editor di Yahoo! Pipes 15 all’interno di “http://finance.yahoo.com/rss/headline?s=gm“, il mio parametro di riferimento sar` “s“. a String : questi moduli facilitano la manipolazione e la combinazione di stringhe di testo. Pos- siamo ottenere concatenazioni di stringhe, operazioni di search and replace, costruzione di sottostringhe a partire da una stringa, etc. Date : questi moduli definiscono e formattano le date. Per esempio, all’interno di questi moduli e ` possibile convertire una stringa in un equivalente valore in formato date e formattare il valore della data (si pensi ad esempio ai diversi formati della data: 12/01/2009, oppure 01/12/2009, oppure Marted` 12 Gennaio 2009). ı Location : questo modulo converte una descrizione di un luogo in un dato geografico. Riconosce infatti gli indirizzi, i nomi di citt` /stati, gli aeroporti, etc. a Number : questo modulo fornisce le operazioni basi dell’aritmetica, come ad esempio la somma, la sottrazione, moltiplicazione, etc. Deprecated : All’interno della documentazione del sito di Yahoo! Pipes, compare la scritta: “These modules will continue to work however, we’re discouraging their use because we’ve introduced new modules with improved functionality“. Ci` credo si riferisca al fatto che o tali moduli sono stati rimpiazzati da altri moduli interamente ricostruiti da sviluppatori di Yahoo! Pipes, come ad esempio il modulo “Translate“, che a tutti gli effetti svolge le stesse funzioni del modulo “Babelfish“. Infine una piccola nota, le pipe possono essere riutilizzate con blocchi per nuove pipe. All’in- ` ` terno della categoria “Favorites“ (vedi fig. 2.3 a sinistra), e possibile aggiungere le pipe a cui si e maggiormente interessati. Inoltre all’interno della categoria “My Pipes“, sono raccolte le proprie pipe sviluppate. 3.2 L’editor di Yahoo! Pipes L’editor presente all’interno di Yahoo! Pipes ci permette di lavorare all’interno di un’intuitiva ` interfaccia grafica. Tale editor e costituito da tre pannelli: Library : il pannello Library si trova sul lato sinistro dell’editor e mostra la lista dei moduli sopra citati raggruppati per funzionalit` . a
  • 18. 3.3. Gli esempi 16 Canvas : il pannello Canvas si trova al centro del pannello e costituisce l’area principale di lavoro ` per la costruzione, manipolazione e testing delle pipe. In quest’area, e possibile trascinare i vari moduli presenti all’interno del pannello Library. Per creare una pipe funzionante, e ` necessario collegare i vari moduli caricati all’interno dell’area di lavoro; tale operazione e ` facile e veloce: basta cliccare sul terminal output di un modulo e collegarlo in ingresso ad ` un altro modulo. Se tale operazione e compatibile, alllora l’indicatore del terminale diverr` a di colore arancione. Debugger : il pannello Debugger e un area ridimensionabile situata nella parte bassa dell’edi- ` ` tor. Attraverso questo pannello e possibile osservare gli output della pipe a diversi livelli; per esempio posso osservare l’output della mia pipe attraverso un modulo intermedio. Ri- sulta quindi di notevole utilit` poich` mi permette di effettuare un debug di ciascun seg- a e mento della pipe. Una volta completata la pipe, basta cliccare su Save, attribuirle un nome, successivamente cliccare sul link Run Pipe.. per eseguirla. 3.3 Gli esempi In questo paragrafo sono descritti due esempi di utilizzo di Yahoo! Pipes; nel primo viene detta- gliata la procedura per la creazione di una semplice pipe step by step. Il secondo esempio invece introduce un modulo, si pu` dire di “appoggio“, presente all’interno di Yahoo! Pipes. Punto di o partenza, naturalmente, la necessit` di possedere un account Yahoo per sperimentare l’ambiente a ` Yahoo Pipes. L’operazione e semplice e gratuita. • Dalla home del sito http://pipes.yahoo.com/pipes/ cliccare su create a new pipe e loggarsi col proprio account yahoo. Comparir` una pagina come in figura 2.3. a ` • Trascinare col drag and drop il modulo fetch nell’area di lavoro. Il modulo fetch e un modulo generico che legge i feed rss indicati. Nel campo vuoto copia e incolla il feed rss. Per ` aggiungere altri feed e sufficiente cliccare sul segno + accanto ad URL nel modulo fetch ed incollare il nuovo feed nel campo vuoto che si crea. Nella figura 3.1, si osserva l’inserimento del feed del sito di “Repubblica“ e del “Corriere della sera“. In basso c’` un area chiamata debugger dove sono elencati tutti i moduli utilizzati e nella pipe. Al proprio interno, se se clicca su “Refresh“ si otterr` l’aggiornamento della pipe a in base alle modifiche apportate (fig. 3.2). ` • Al termine della prima fase, ovvero quella di inserimento dei feed, e conveniente salvare il pipe, cliccando su save ed assegnando il nome. Nel mio caso verr` chiamato “Notizie Italia“, a come si pu` anche vedere dalla figura 3.3. o
  • 19. 3.3. Gli esempi 17 Figura 3.1: Selezione feed rss Figura 3.2: Refresh della pipe Figura 3.3: Salvataggio della pipe
  • 20. 3.3. Gli esempi 18 ` o ` • In seguito al salvataggio, e possibile testare la pipe. Per fare ci` , e necessario collegare il ` modulo fetch al modulo pipe output. Il risultato da me ottenuto e visibile nella figura 3.4. Figura 3.4: Il risultato della pipe “Notizie Italia“ • Ora introduciamo la parte relativa agli “Operators“, in base ai quali risulta possibile effettua- re semplici operazioni, quali ad esempio l’ordinamento, il filtraggio dei contenuti presenti all’interno del modulo Fetch, etc. Nel mio caso, ordiner` le notizie per titolo, e successiva- o mente filtrer` tali notizie tenendo come argomento base lo sport. Nello specifico, selezionare o tra gli “operators” nel frame laterale sinistro il modulo “Sort” e trascinarlo nell’area di la- voro. Nel men` a discesa del modulo stesso selezionare “title“ e “ascending“. Tutto ci` e u o` visibile all’interno della figura 3.5. Figura 3.5: Il modulo Sort
  • 21. 3.3. Gli esempi 19 • Occorre ora connettere i moduli. Cliccare sul piccolo cerchio in basso al modulo fetch e trascinare il tubo (pipe) sul cerchio in alto al modulo sort. Ripetere l’operazione dal modulo sort al modulo pipe output e cliccare su refresh per un aggiornamento del pipe. Salvare il lavoro. Il risultato sar` il seguente (fig. 3.6). a Figura 3.6: Il risultato dell’ordinamento per titolo • Ora concludiamo il breve esempio con il modulo “Filter“. Nel mio caso specifico, filtrer` le o notizie che contengono all’interno del campo “description“ il valore “Calcio“ (fig. 3.7). Figura 3.7: Il modulo Filter ` Il diagramma ottenuto e osservabile nella figura 3.8 Il risultato ottenuto viene mostrato nella figura 3.9.
  • 22. 3.3. Gli esempi 20 Figura 3.8: La pipe finale Figura 3.9: La versione finale del risultato della pipe
  • 23. 3.3. Gli esempi 21 ` Il pipe creato e ora disponibile anche come feed rss per essere riutilizzato nelle diverse applica- ` zioni. Per disporre del pipe come feed RSS, e sufficiente cliccare sul link “get as rss”. Tra le altre ` caratteristiche, e possibile condividere tale pipe all’interno della propria pagina personale di Yahoo e di Google; baster` cliccare sopra gli appositi link, visibili nella parte superiore della figura 3.9. a BabelFish Il secondo esempio descrive brevemente un particolare modulo presente all’interno di Yahoo! Pipes, BabelFish, il traduttore online di Yahoo. Questo modulo utilizza come elementi il titolo e la descrizione di un RSS feed, e li traduce. Nelle figure 3.10 e 3.11 vengono mostrate rispettivamente i singoli moduli all’interno dell’edi- tor mentre nell’altra il risultato della pipe. Figura 3.10: La pipe all’interno dell’editor grafico
  • 24. 3.3. Gli esempi 22 Figura 3.11: L’output della pipe
  • 25. Capitolo 4 Conclusioni ` Yahoo! Pipes e’ un servizio web con un’interfaccia grafica user friendly che permette, agli utenti senza particolari conoscenze di programmazione, di assemblare web services abbastanza comples- si. Risulta possibile utilizzare dati ottenuti da fonti aperte, pubblicate attraverso i formati di RSS (Really Simple Syndication) o accessibili attraverso API (Application Programming Interfaces) , manipolarle ed aggregarle usando operatori logici, funzioni per filtrare i contenuti, concatenare stringhe, estrarre informazioni utili per la georeferenziazione, introdurre informazioni da parte degli utenti. ` Il risultato e un servizio web personalizzato, disponibile in formato RSS utile per essere inte- grato nelle proprie applicazioni web. Yahoo! Pipes pu` rappresentare, dunque, uno dei primi esempi di Web 3.0, dove le informa- o zioni pubblicate dagli utenti devono poter interagire tra loro. Se, infatti, nel web 2.0 gli utenti possono diventare protagonisti dell’informazione essenzialmente lineare, ovvero pubblicando le proprio foto e attivit` sul web, qui possono diventare creatori di spazi e applicazioni multimediali a da condividere (come oggi si fa con le informazioni) con persone che abbiano gli stessi interessi o all’interno di social network dedicati; si pu` parlare di ponte tra comunit` di sviluppo e social o a network. L’informazione da lineare diventerebbe cos` multimediale e alla portata di tutti. ı 23
  • 26. Bibliografia Abramo VIncenzi (2009). Api. http://www.tesionline.it/default/glossario.jsp?GlossarioID=1940. Ciro Zambrano (2009). Mash-up. Dalke Scientific (2009). Screen scraper. Daniele Citterio (2008). Mashup: diamo un contesto all’informazione. Google (2009). http://code.google.com/intl/it-IT/gme/. Linkedin (2009). Featured applications. http://www.linkedin.com/apps. Mauro Rossi (2009). Glossario di informatica e internet. http://www.maurorossi.net/glossario/. Microsoft (2009). http://www.popfly.com/. Universit` degli studi di Trieste (2009). a Formati di sindacazione dei contenuti web. http://sindacazione.altervista.org. Yahoo! (2009). http://pipes.yahoo.com/pipes/docs. 24