Cloud, la parola magica
27 ottobre 2010 | scritto da: Luciano Vernaschi | 4 Commenti

Così come in tanti ambiti, anche in Internet ci sono le parole “in voga”, anzi, è un fenomeno molto frequente. Una delle parole sulla bocca di tutti, usata e abusata, è cloud. Iniziamo subito col chiarire una cosa: non è solo una moda, è dove Internet sta andando, e ci andrà, indipendentemente dalle singole opinioni. Ci andrà perché così vogliono i grandi player del mercato internazionale, e perché la comodità per gli utenti è enorme. Siamo ancora lontani dal finire completamente tra le nuvole (o into the cloud), ma la rotta è segnata e procediamo spediti.
Vediamo allora cosa sta succedendo, cos’è questa nuvola e perché è tanto rilevante. Come dicevo, i grandi nomi sono molto importanti qui, quindi seguiamo la rotta come ce la indicano due di loro, che stanno lavorando in sinergia: Google e VMware. Iniziamo con un filmato creato da quest’ultima.
Beh, permettetemi di dire che, se veramente la cloud sfornasse pizza da sé, sarebbe fantastico. Ma torniamo alla cloud che interessa a noi: va vista sotto due luci diverse, quella tecnica e quella degli utenti. Iniziamo da loro.
La prima domanda è: come mai i grandi player sono così interessati alla cloud? Chi più, come Google, chi meno, come Oracle, chi controvoglia, come Microsoft, ma di sicuro ognuno si gioca molto, qualsiasi scelta abbia fatto. La risposta, comunque, è che la cloud ha un grande potere accentratore. Rende i forti più forti, i piccoli più piccoli, gli utenti molto piccoli… ma anche molto soddisfatti, probabilmente, perché in fondo i servizi offerti sono di buona qualità, e lo saranno sempre di più, e le comodità sono tante.
Alla fine parliamo sempre di comunicazione tra dispositivi tecnologici: se da un lato, inevitabilmente, nascono device piccoli e potenti, ma comunque molto più semplici da usare di un PC (i vari smartphone e pad), dall’altra parte del “telefono” risponde la cloud. Si assottiglia qundi lo strato client, si ispessisce lo strato server, e non si tratta di un semplice aumento di dimensioni, ma di un cambio di fisionomia.
La cloud fornisce agli utenti tutto: non solo i propri dati, come le email, ma anche l’applicazione per gestirli. Il riferimento a Gmail è evidente: si tratta dell’esempio più famoso di applicazione cloud. Ma qual è la differenza con una normale webmail? Verrebbe da pensare che alla fine è la stessa cosa, e questo è uno dei punti forti delle cloud: non sono sconvolgenti per gli utenti. Google ora gestisce non solo tutte le mail degli utenti Gmail, ma anche tutte le mail associate a domini che usano Google Apps Mail. E va bene, sarà solo una webmail un po’ più grande delle altre: e invece no, perché quando ci si connette a Gmail o Google Apps Mail, non ci si connette a un server specifico, e neanche a un gruppo di server che fanno load balancing, ma a una rete di server che lavorano in modalità cloud, condividendo i dati in maniera distribuita e non predeterminata.
I dati più importanti, per esempio, sono replicati più volte di quelli meno importanti, e anche le varie applicazioni si “autoclonano” quando ricevono un picco di richieste. Scalabilità al massimo livello, dunque, perché è la cloud stessa a decidere cosa è più importante in un determinato momento, e applicazioni e dati vengono accesi/spenti, copiati/cancellati, in continuazione, per rispondere al meglio agli utenti.
Anche la distribuzione geografica è importante: le applicazioni e i dati possono copiarsi e distribuirsi in maniera corrispondente alla distribuzione delle richieste, così se di colpo tutti gli Italiani si mettono lì a guardare un nuovo fantastico video su Youtube, un video che però è ignorato dal resto del mondo, ecco che quel video, e tutto ciò che gli gira attorno, inizia a replicarsi nella zona della cloud che si trova in Italia o vicinanze. Fenomenale.
Ma perché tutto questo è così importante per l’utente finale? In fondo le applicazioni online esistono da tempo, e si chiamano ASP (Application Service Provider). La classica webmail citata prima è un ottimo esempio. Ma con quella struttura (uno o più server in un’azienda che eseguono un’applicazione e la pubblicano sul web o su una Intranet) più in là di tanto non si va. La cloud, invece, è estremamente più potente, e può segnare la svolta e aprire davvero lo scenario tanto atteso o temuto, in cui il “dumb terminal” citato nel filmato, piccolo o grande che sia, si connette alla cloud e riceve tutto da lì. È una questione di forza, dunque.
Tecnicamente, è possibile anche eseguire una cloud in una piccola azienda, o anche in una cantina: basta avere a disposizione un po’ di computer e installare, per esempio, uno dei vari cloni di Google App Engine disponibili. Funziona. Ma se ne perde il senso: in quel caso sì che non si vede il vantaggio rispetto a un’architettura tradizionale. Quando invece in gioco c’è una grossa rete distribuita, tutto cambia.
Passiamo brevemente all’aspetto tecnico: per noi programmatori la cloud è una sfida non indifferente, perché cambia il modo in cui le applicazioni vanno scritte. Il primo esempio che mi viene in mente è l’impossibilità di usare SQL su Google App Engine, che è probabilmente la prima cloud che tutti i programmatori provano a usare, per vari motivi: è di Google, usa due linguaggi molto diffusi (Python e Java) e, soprattutto, offre una modalità di base gratuita, più che sufficiente a sperimentare e pubblicare applicazioni destinate a un pubblico non enorme.
Naturalmente, siamo ancora in fase di crescita, e cominciano a spuntare fuori strumenti di sviluppo pensati per la cloud. Google e VMware, i nostri compagni di viaggio in questo articolo, stanno per rilasciare la versione definitiva di SpringSource Tool Suite, una suite di strumenti pensati apposta per lo sviluppo di applicazioni enterprise e cloud, compatibili con le cloud di entrambe le aziende: ecco l’annuncio della RC1 sul blog di GWT. Credo si tratti del più potente strumento di sviluppo cloud disponibile al momento, ma sicuramente ne seguiranno altri, anche se è difficile eguagliare l’importanza dei due player citati, che insieme fanno davvero un gigante.
Almeno per il momento, comunque, scrivere applicazioni cloud richiede competenze specifiche. Probabilmente in futuro sarà la norma, ma oggi è necessario imparare quali sono le conseguenze di lavorare con dati e applicazioni distribuite, perché cambia davvero tanto: in ogni singola “pagina” di codice che si scrive, bisogna avere ben presente che non c’è alcun contesto di riferimento in cui verrà eseguita: magari normalmente si sa che verrà eseguita in un determinato momento, invece nella cloud può essere il primo codice eseguito dopo che l’applicazione è stata duplicata, per esempio. In più, la sua esecuzione non deve durare troppo, altrimenti verrà terminata. E i dati? Bisogna essere bravi a “legare” tra loro i dati che devono sempre essere interconnessi, in modo che viaggino sempre insieme nella cloud, ma senza esagerare, altrimenti l’applicazione non viene eseguita in modo soddisfacente. E così via.
Insomma, la cloud è una grande opportunità per gli utenti, e una grande sfida per le aziende e per gli sviluppatori. Come ho detto all’inizio, non è una scelta, è un destino.
Articoli simili in: Mondo internet, Software Web
2 novembre, 2010 alle 19:06
- digital divide che ancora attanaglia il ns paese. Io vivo in Emilia che è la seconda regione più ricca d’Italia e la zona dove abito non è coperta da ADSL…
- l’accesso non libero in wi-fi che obbliga le persone a mettere una password per accedere ad una rete seppur pubblica (come quella che ti può offrire un comune o un locale). Sotto la falsa pretesa di controllo del terrorismo (ridicolo) si controlla tutti quelli che accedono alla rete.
Ecco la cloud è sicuramente il destino, ma non sempre questo si compie in maniera logica. Tu cosa ne pensi?
Maurizio
3 novembre, 2010 alle 19:34
A proposito di questa affermazione “…obbliga le persone a mettere una password….sotto la falsa pretesa di controllo del terrorismo (ridicolo)….”
Credo che l’utilizzo di credenziali per accedere alla rete e impedirne abusi sia sacrosanto.
Saresti d’accordo a girare in auto senza targa ? Non credo.
La privacy è un’altra cosa.
bye
3 novembre, 2010 alle 21:31
Quanto al digital divide, non è un problema solo tecnologico: mi vengono in mente gli autobus e i servizi pubblici in genere. Già in Italia non sono mai stati eccelsi, ma adesso è normale che si effettuino solo le corse in orari richiesti, e non quando la domanda è bassa, come di sera. In altri Paesi è normale che una tratta sia servita sempre, mentre qui puoi prendere un autobus solo quando serve anche agli altri, e quindi è affollato. Quando serve solo a pochi, non lo fanno, e bisogna arrangiarsi.
Stessa cosa per Internet: si fanno le connessioni solo dove fruttano, alla faccia di tutte le tasse che paghiamo, e che se ne vanno in tasca ai soliti noti (e meno noti), e per pagare gli interessi del debito pubblico.
Proprio per questo, in Italia ha grosse potenzialità l’Internet su rete mobile, e qui la cloud ha gioco facile: i telefonini sono terminali ideali per le applicazioni cloud (vedi filmato).
Ciao!
4 novembre, 2010 alle 12:46
Rispetto all’accesso alla cloud da terminali mobili, è vero che sia tutto più facile ma è altrettanto vero che il 90% dei siti web/applicazioni non sia ancora pronto ad essere navigato da un device mobile.
Ciao ciao