lezione 6: il web come piattaforma
DESCRIPTION
Slide del corso sul Web 2.0 tenuto all'Università di Milano Bicocca da R.Polillo - Edizione ottobre 2009. Vedi anche www.corsow.worpress.comTRANSCRIPT
IL WEB COME PIATTAFORMA
Roberto Polillo, www.rpolillo.it
1
Università degli Studi di Milano BicoccaDipartimento di Informatica, Sistemistica e Comunicazione
Corso Web 2.0AA 2009-2010
2
Web 2.0: il vero salto epocale…
Il web come piattaforma di elaborazione
Piattaforma: infrastruttura hardware e software di base che permette di eseguire applicazioni softwareRicordate il vecchio slogan Sun: “The network is the computer”?
2
3
internet
Non è un fatto tecnologico, ma un cambio di paradigma
La piattaforma elaborativa si sposta da qui…
… a qui
dalla rete come insieme di siti… … alla rete come insieme di applicazionidai “fat client” … … ai “thin client”dal sw come prodotto … al sw come serviziodalle sw release… … al continuous improvementdall’architettura proprietaria… … all’architettura apertadal lavoro individuale… … al lavoro cooperativodalla centralità delle funzioni… … alla centralità dei datidalla connessione… … alla comunicazionedall’era della Microsoft… … all’era di Google
3
R.Polillo – Corso Web 2.0 (ott 2009)
4
Computing paradigms
Internet
Mainframe computing1 computer / molti utenti
Client-server computingmolti computer / molti utenti
Cloud computinginternet / moltissimi utenti
1965 1985 2005+
5
Cloud computing
The cloud (la nuvola) è una metafora per Internet Nel cloud computing le capacità di elaborazione e di
storage vengono fornite da provider specializzati, attraverso internet, a una moltitudine di utenti
“Cloud computing è un paradigma di elaborazione in cui risorse dinamicamente scalabili e spesso virtualizzate vengono fornite come servizio attraverso la rete. Non è necessario che gli utenti abbiano conoscenza o competenze sulla infrastruttura tecnologica che li supporta.” (Wikipedia)
http://en.wikipedia.org/wiki/Cloud_service
5R.Polillo – Corso Web 2.0 (ott 2009)
6
Cloud computing: alcuni fornitori
Da Wikipedia R.Polillo – Corso Web 2.0 (ott 2009)
7
Virtualizzazione
7R.Polillo – Corso Web 2.0 (ott 2009)
Acquisto il servizio da un singolo fornitore, ma le risorse che utilizzo possono provenire da una moltitudine di fornitori / infrastrutture diversi, a me non noti
8
Computing paradigms
Internet
Mainframe computing1 computer / molti utenti
Client-server computingmolti computer / molti utenti
Cloud computinginternet/ moltissimi utenti
1965+ 1985+ 2005+
9
Terminologia
Nell’ambito del cloud computing si usano molti termini, sigle, slogan, che cambiano spesso.
Per es.: Utility computing: quando si forniscono risorse “a
consumo”, come nelle public utilities (es.: fornitura di gas o di energia elettrica)
Software as a service (SaaS): quando si forniscono servizi applicativi
Grid computing: quando si utilizzano risorse di calcolo distribuite, utilizzando cicli di CPU inutilizzati
Rem tene, verba sequentur…
R.Polillo – Corso Web 2.0 (ott 2009)
10
Cloud computing: tipi di servizioIN
TER
NET
Prevalentemente per gli sviluppatori di sw, per es.:Amazon Web Services (2006+)IBM Blue Cloud (2008+) Google App Engine (2008+)Microsoft Windows Azure (2009+)
Per es.: Facebook, Youtube, Skype, Google Apps, Salesforce, Dropbox,
Servizi applicativi di rete accessibili via API. Per es.: identity, payment, map, …,
Device (hw+sw) per accedere al cloud computing. Es.: mobiles, thin clients
Immagine da Wikipedia
CLIENT
11
Esempio: Amazon Web Services (AWS)
Un insieme di servizi remoti per gli sviluppatori, di tipo vario, “a consumo”, offerti sulla rete da Amazon.com, che utilizza la gigantesca infrastruttura hw e sw di Amazon:
• Amazon Elastic Compute Cloud (Amazon EC2): scalable computer capacity (dal 2006)“Amazon EC2 provides a truly elastic computing environment. Amazon EC2 enables you to increase or decrease capacity within minutes, not hours or days.”
• Amazon S3 (Simple Storage Service): online storage web service (da 2006)
• ….
http://en.wikipedia.org/wiki/Amazon_Web_Services R.Polillo – Corso Web 2.0 (ott 2009)
12
Esempio: www.dropbox.com Servizio on-line di storage (da fine 2008) Semplice interfaccia a folder: privati, pubblici, condivisi Si deve installare un client (più piattaforme) Freemium Usa Amazon S3 Video: https://www.getdropbox.com/screencast Altri servizi di storage:
- http://mozy.com/ (backup services)- http://www.box.net/- http://www.wuala.com/ (tecnologia “grid”)- http://rapidshare.com (trasferimento di files)- …
13
Esempio: www.37signals.com
Backpack: http://backpackit.com/ Semplice intranet per lavoro cooperativo
Basecamp: http://backpackit.com/Semplice project management
Highrise: http://highrisehq.com Semplic contact management
Provarli per la didattica
Esempio: www.webs.com
Web site builder molto facile da usare, interamente on-line
Hosting della versione base gratuita: spazio e banda limitati, non ad-free
Dal 2001, ora più di 20 milioni di siti Funzioni:
Blog Forum Members (semplice social network) Upload di files, foto, video, … E-commerce (shopping cart, pagamento via Paypal) Site statistics (attraverso www.clicky.com) Vari widgets Molti temi grafici predefiniti
14
Esempio15
Esempio: temi16
Esempio:www.weebly.com
Drag&drop web site builder, interamente on-line, facilissimo da usare
Dal 2006 (?), ora più di un milione di utenti Versione base tutta on-line, gratuita Anche funzioni di blog, e-commerce, adsense http://en.wikipedia.org/wiki/Weebly
17
Esempi
http://david.weebly.com Il blog del creatore di Weebly
http://golf4acure.weebly.com/ http://video.weebly.com Mia prova:
http://robertop.weebly.com
18
19
Esempio: www.ning.com
Permette di costruire social network “private” Nessun software da scaricare: costruzione e
accesso vengono fatti online Nessuna esperienza di programmazione necessaria Hosting di base gratuito (in cambio pubblicita);
servizi premium a pagamento Oltre mezzo milione di social networks attive
R.Polillo – Corso Web 2.0 (ott 2009)
20
Office suites: possibilità
DATA
APP
OFFLINE
Es. MS OFFICE
DATAAPPIBRIDA
Es. MS OFFICE LIVE WORKSPACE
Fat client
DATA
APPONLINE
Es. GOOGLE DOCS
INTERNET
Thin client
20R.Polillo – Corso Web 2.0 (ott 2009)
21
Online office suites: vantaggi
Nessun software da scaricare e installare sul proprio computer Nessuna necessità di upgrading del software quando vengono aggiunte nuove
funzioni o eliminati problemi esistenti È sufficiente un thin client con minimi requisiti hardware Si può accedere ai propri documenti praticamente da ogni computer dotato di
una connessione a banda larga È possibile condividere i documenti con altri utenti, senza bisogno di un proprio
server Non si deve acquistare una licenza software (e i suoi upgrade). Ci si abbona al
servizio (SaaS); in alcuni casi il servizio è gratuito Nessun problema in caso di crash del proprio computer: i documenti sono al
sicuro sul server.
R.Polillo – Corso Web 2.0 (ott 2009)
22
Online office suites: svantaggi
Data security. Tutti i propri dati risiedono su un server remoto, di cui non si ha il controllo (anche se si possono effettuare regolari backup).
Velocità. Le office suite attualmente disponibili richiedono spesso una connessione a banda larga
Completezza funzionale. Attualmente, le funzioni fornite dalle suites online sono meno complete di quelle fornite dalle suite tradizionali.
Non è agevole lavorare off-line: per ricevere e trasmettere le modifiche occorre essere connessi.
Vedi http://en.wikipedia.org/wiki/Online_Office
22R.Polillo – Corso Web 2.0 (ott 2008)
23
Google Docs
Semplici WP, spreadsheet e presentation gratuiti, web based, utilizzabili dal proprio browser
Nessun sw da installare sul client; per default i documenti vengono salvati sui server Google i propri documenti sono potenzialmente accessibili da qualunque PC in rete
Supporto al lavoro cooperativo in rete (condivisione, accesso, editing contemporaneo, vedi video seguente)
I documenti possono essere pubblicati in rete (URL) Servizio “premium” a pagamento (per aziende) Basic info: http://docs.google.com/support/bin/answer.py?answer=49008&topic=8613 Per usarlo: http://docs.google.com/?hl=en&pli=1#all
23R.Polillo – Corso Web 2.0 (ott 2009)
25
Microsoft Office Live Workspace
Accesso dai pacchetti di Office a workspace remoto gestito da Microsoft
Possibilità di condivisione di documenti e lavoro cooperativo Possibilità di visione (e alcune funzioni) da browser 2008: versione beta, gratuita http://workspace.officelive.com/
25R.Polillo – Corso Web 2.0 (ott 2009)
26
www.zoho.com
27
Cloud computing: vantaggi
Semplificazione del data center Riduzione dei costi fissi Scalabilità su richiesta
28
Cloud computing: “sfide” e obbiettivi
Sfide: Sicurezza Interoperabilità di dati e applicazioni Portabilità di dati e applicazioni Governance e gestione Misure e controlloObbiettivi: Scelta Flessibilità Velocità e agilità Competenza
Da: http://www.opencloudmanifesto.org/
(discussione aperta, in corso, su “open cloud”)
31
Cloud computing: alcuni aspetti importanti
Sicurezza Privacy User interface
31R.Polillo – Corso Web 2.0 (ott 2009)
32
Sicurezza
Information security:la protezione dell’informazione e dei sistemi informativi da accesso, uso, divulgazione, distruzione, modifica non autorizzati.
http://en.wikipedia.org/wiki/Information_security
32R.Polillo – Corso Web 2.0 (ott 2009)
33
Sicurezza
Qui (PC o rete privata) tutti i miei dati sono controllati da me
In rete i miei dati sono controllati dai miei service provider
FIREWALLrete
locale
33
Le 6 dimensioni della security:1. Confidenzialità2. Possesso o controllo3. Integrità 4. Autenticità 5. Disponibilità6. Utilità
(Parker, http://en.wikipedia.org/wiki/Parkerian_hexad )
R.Polillo – Corso Web 2.0 (ott 2009)
34
Privacy
La privacy è il diritto alla riservatezza delle informazioni personali e della propria vita privata
La privacy si traduce spesso nella capacità di una persona di impedire che le informazioni che la riguardano diventino note ad altri, qualora il soggetto non abbia volontariamente scelto di fornirle diritto al controllo sui propri dati personali
http://it.wikipedia.org/wiki/Privacy In Italia: http://www.garanteprivacy.it/garante/navig/jsp/index.jsp
34R.Polillo – Corso Web 2.0 (ott 2009)
35
Internet privacy
Problema enormemente articolato e complesso Le normative dei vari paesi sono molto diverse, ma la rete è globale Dati sensibili e non sensibili; dati permanenti o non permanenti (la
sensibilità di un dato può cambiare nel tempo) Dati aggregati e dati disaggregati: la sensibilità può cambiare con il
livello di aggregazione Spesso è sufficiente poter controllare in modo “ragionevolmente”
sicuro a chi può essere rivelata la propria identità e i dati personali ad essa associati
http://en.wikipedia.org/wiki/Internet_privacy
35R.Polillo – Corso Web 2.0 (ott 2009)
36
Aggregazione automatica
Per avere un’idea di che cosa si potrebbe fare (=si farà) date un’occhiata a:www.whoishim.com
In questo caso si tratta di un semplice mashup di vari strumenti, ma…pensate a un’aggregazione “intelligente” dei dati provenienti dalle varie fonti
R.Polillo – Corso Web 2.0 (ott 2009)
37
Anonimia
Un elemento di base da considerare per la internet privacy è la identificabilità dell’utente
L’anonimia totale deve essere permessa? Quando? (Può essere usata a scopi buoni o cattivi)
L’anonimia totale è tecnicamente possibile? Numerose tecniche e modi per superarle
Pseudonimi /nickname/a.k.a. False identità
http://people.dsv.su.se/~jpalme/society/anonymity.html
R.Polillo – Corso Web 2.0 (ott 2009)
Quale interfaccia utente nel cloud computing?
Accenneremo a tre aspetti: Il modello dell’interfaccia: oltre il desktop? Lo stile dell’interfaccia: le Rich Internet
Applications (RIA) Modalità di identificazione
38
39
Il modello dell’interfaccia
Metafora del desktop:- documenti- folder- applicazioni
- documenti [condivisi]- search- siti/servizi- link- “storie” dell’interazione con altri utenti
39
Il “desktop” è nato in un contesto completamente differente, ed è ormai inadeguato. Quali nuovi modelli prevalenti di interazione si svilupperanno ?
R.Polillo – Corso Web 2.0 (ott 2009)
40
Evoluzione
40
2. Web 1.0
Il mio sito con i miei documenti
3. Web 2.0
I miei documenti dai miei provider
Anche i miei siti sono documenti!
1. PCI miei documenti
desktop
?
R.Polillo – Corso Web 2.0 (ott 2009)
41
Esempio: Flock (un “social browser”)
Basato sul codice di Firefox, si distingue da questo per la capacità di integrarsi con i principali siti di social networking e di blogging, tra i quali Twitter, Facebook, YouTube, WordPress, Blogger, Xanga e del.icio.us.
Permette agli utenti di visualizzare contatti, contenuti e risorse di questi siti in un'apposita barra laterale o orizzontale del browser, e condividere per mezzo di semplici operazioni di drag and drop testi, link, foto, video ed altri contenuti digitali
Scaricabile gratuitamente da http://www.flock.com/ Video recensione (6’) in: http://it.youtube.com/watch?v=y9Oqj4t586Y Anche in: http://online.wsj.com/article/SB121806980256818899.html?mod=2_1571_topbox
41R.Polillo – Corso Web 2.0 (ott 2009)
42
Lo stile dell’interfaccia: le RIA
Si caratterizzano per la forte interattività (ciclo stimolo-risposta molto rapido - es.: drag&drop)
Usano tecnologie in cui la parte dell'applicazione che gestisce l’interfaccia utente è trasferita sul client dall’applicazione stessa, all’interno del browser l’interazione con l’utente non coinvolge in modo sostanziale il server remoto e non produce sostanziale traffico in rete
Esempi: Ajax, Adobe Flex Permettono quindi un livello di interazione con l’utente che prima
era possibile soltanto per applicazioni desktop
42R.Polillo – Corso Web 2.0 (ott 2009)
43
43
Google Earth
44
http://maps.google.it/
45
Google Streetviewhttp://maps.google.com/help/maps/streetview/
R.Polillo – Corso Web 2.0 (ott 2009)
46
Google car
R.Polillo – Corso Web 2.0 (ott 2009)
47
Identificazione dell’utente
47
Sul mio PC mi identifico una sola volta(es.:al login)
In rete mi devo identificare ad ogni sito / applicazione
Vorrei avere un meccanismo di single sign on
R.Polillo – Corso Web 2.0 (ott 2009)
Il problema: fornire la proprie “credenziali”, in modo tale da essere identificato con certezza (esempio tipico: userid + password)
48
Single sign on: prima soluzione
Applicazione locale che tiene traccia di tutte le mie diverse identità, e mi supporta nell’accesso
48
R.Polillo – Corso Web 2.0 (ott 2009)
49
Single sign on: seconda soluzione
Servizio di rete che mi identifica e “garantisce” la mia identità alle altre applicazioni
49
Esempio: OpenID
R.Polillo – Corso Web 2.0 (ott 2009)
50
OpenID
Meccanismo proposto da Brad Fritzpatrick nel 2005 (ancora in fase di diffusione)
Permette agli utenti di accedere a differenti servizi on-line utilizzando una unica identità digitale (eliminando la necessità di ricordare userid e password differenti per ogni sito)
La tecnologia è non proprietaria e gratuita Nel 2007 costituita la OpenID Foundation “to help promote, protect
and enable the OpenID technologies and community”. Ne fanno parte, fra gli altri, Microsoft, Google, IBM, Yahoo!, Verisign
http://openid.net
50R.Polillo – Corso Web 2.0 (ott 2009)
51
OpenID: in sintesi
L’OpenID ha la forma di un URL (es.: mario.myopenid.com)
Richiede che l’utente si registri con un OpenID Provider attraverso il quale effettuerà registrazioni e accessi ai siti che supportano il sistema
Il servizio del provider (es. myopenid.com, claimid.com) è gratuito
Video introduttivo in italiano: http://www.ictv.it/file/vedi/355/openid/
51R.Polillo – Corso Web 2.0 (ott 2009)
52
In pratica…
• Mi registro presso un OpenID provider, dando una password psw e ottenere il proprio OpenID (es.: mario.myopenid.com)
• Mi registro presso un’applicazione che supporta OpenID, identificandomi come mario.myopenid.com .L’applicazione chiederà conferma (ed eventuali altri dati, es. email) attraverso il provider
• Quando voglio accedere all’applicazione, mi identifico come mario.myopenid.com
• Allora l’applicazione chiederà al provider di autorizzare l’accesso. • Il provider mi chiederà conferma (chiedendomi la password psw
(sempre quella) e autorizzerà l’accesso. NB psw non viene comunicata all’applicazione
52R.Polillo – Corso Web 2.0 (ott 2009)
53
Es. registrazione a ma.gnolia
53
1
2
3
55
Il Web come piattaformaLAVORO INDIVIDUALE
Iscriversi a www.dropbox.com (o altro strumento analogo) e provarlo per backup personale, pubblicazione e condivisione di files
Realizzare un semplice sito web utilizzando www.webs.com, www.weebly.com
Iscriversi a Google e sperimentare Google Docs, che dovrà essere usato nei progetti di gruppo
Leggere l’Open Cloud Manifesto http://www.opencloudmanifesto.org/
Privacy: cercare informazioni su una persona nota con www.whoishim.com
Creare un proprio openid e imparare a usarlo Sperimentare Google map e street view
55R.Polillo – Corso Web 2.0 (ott 2009)