leonardo.it

SproutCore, il cuore Open di MobileMe

 
Camillo Miller
18 giugno 2008
Commenta
sproutmobile SproutCore, il cuore Open di MobileMe

Lo sviluppatore che oggi volesse creare un’applicazione per il web si troverebbe davanti ad un bivio: potrebbe scegliere di sviluppare il proprio progetto con le tecnologie proprietarie di Adobe (Flash, Air), di Microsoft (Silverlight) o di Sun (Java), con il conseguente set di plugin che l’utente dovrà scaricare per il loro funzionamento; potrebbe invece decidere di seguire la strada tracciata da Google ed utilizzare linguaggi Open, come  HTML, Javascript, Ajax e CSS. Con questi semplici strumenti i programmatori di Google hanno creato applicazioni che possono gareggiare quasi alla pari con le più note e complete applicazioni desktop, senza nemmeno necessitare dell’installazione di un semplice add-on. Apple, in un momento critico per lo sviluppo del cosiddetto cloud computing, ha scelto  la seconda alternativa per sviluppare il nuovo servizio MobileMe: secondo i rumors del WWDC, il successore di .Mac è stato creato su piattaforma SproutCore, un framework open basato su Javascript. Cerchiamo di capire insieme cosa significa tutto questo.

Che cos’è il cloud computing? Ecco la definizione di  Wikipedia:

Con il termine Cloud computing si intende un’insieme di tecnologie informatiche che permettono l’utilizzo di risorse (storage, CPU) distribuite. La caratteristica principale di tale approccio è di rendere disponibili all’utilizzatore tali risorse come se fossero implementate da sistemi (server o periferiche personali) “standard”.

I parole povere il sistema remoto è “la nuvola” (cloud, in inglese) a cui il nostro dispositivo si collega per comunicare e ricevere dati processati e al quale fa riferimento per la sincronizzazione dei dati stessi con altri dispositivi capaci di collegarsi al sistema remoto. Non a caso Apple ha scelto proprio l’immagine di una nuvoletta per descrivere il servizio MobileMe. In quest’ottica, poi, si capisce ancora meglio il significato del suffisso Air che Cupertino ha scelto per l’ultimo nato della gamma Mac.

Che cos’é SproutCore? SproutCore è un piattaforma Open che permette di realizzare applicazioni Javascript leggere e veloci, grazie anche alla minima quantità di codice necessaria per la sviluppo, che possono integrarsi nei browser e comunicare con un server Ajax per la gestione dei dati solo quando necessario.

SproutCore fu sviluppato originariamente da Charles Jolley per la realizzazione di un’applicazione chiamata MailRoom; successivamente Apple assunse Jolley che entrò a far parte del team .Mac, insieme al quale contribuì all’evoluzione della propria “creatura”.

Perché una soluzione Open. Ma perché se esistono soluzioni Open efficienti e funzionanti, (come dimostrano le Google Applications), Adobe, Microsoft e Sun hanno invece scelto di creare un framework proprietario per lo sviluppo delle RIA (Rich Internet Application)? La domanda analoga, volendo forzare leggermente il paragone, potrebbe essere questa: perché Linux non è il sistema operativo più diffuso al mondo? La risposta ad entrambe è semplice: perché non generano un profitto diretto. Come dimostrano Red Hat e IBM, l’unico modo per generare profitti con Linux è la vendita alle aziende di servizi correlati. Analogamente i frameworks Open per lo sviluppo di Web Applications non garantiscono la generazione di un profitto immediato e facilmente individuabile derivante dalla vendita delle licenze per l’utilizzo stesso del la piattaforma di sviluppo.

Non è certo un segreto che il profitto indiretto di Google, a cui la diffusione delle ottime applicazioni web di Big G contribuisce sensibilmente, derivi dalla pubblicità. Non è un segreto nemmeno il fatto che il vero guadagno di Apple derivi dalla vendita del proprio hardware, e in minima parte dalla vendita di un servizio (i 79€ annui di abbonamento a MobileMe servono in gran parte per la gestione del sistema).

Microsoft, Sun e Adobe si trovano invece nella condizione di dover spingere il proprio prodotto (perché di vero e proprio prodotto si tratta) e il proprio standard perché una maggiore diffusione della loro soluzione proprietaria contribuisce alla crescita degli introiti. E’ una proporzione diretta che per sua stessa natura spinge verso la ricerca di un monopolio, teoricamente la condizione migliore per il detentore della tecnologia che si afferma come standard.

mobilemeguidedtoursbm692008 SproutCore, il cuore Open di MobileMe

Una Mac Application per le masse. Un altro aspetto da non sottovalutare è l’estrema portabilità dei linguaggi Open e di tutte le applicazioni sviluppate su piattaforme come SproutCore. La Web Application di MobileMe, con il proprio Mac-look e Mac-feeling  funzionerà su tutti i browser moderni e sarà immediatamente disponibile su qualsiasi sistema. Milioni di utenti PC possessori di iPhone potranno provare indirettamente l’esperienza Mac sul proprio computer, senza dover installare o scaricare alcun plugin. L’accoppiata OS X iPhone – Mobile Me potrebbe rivelarsi una calamita di straordinaria potenza  che attiri  un numero sempre maggiore di utenti verso i sistemi Apple.

D.E. Dilger di Roughly Drafted ha scritto sull’argomento un’analisi tecnica molto approfondita, e in un passaggio spiega perché SproutCore può rappresentare una valida alternativa a Flash per lo svilupppo di applicazioni dinamiche per il web. Le Web Galleries del vecchio .Mac sono uno degli esempi più significativi delle possibilità offerte da un framework Javascript:

Questa scelta non ha permesso ad Apple solamente di far evolvere le proprie applicazioni web grazie all’uso di web standards aperti, ma le ha permesso anche condividere SproutCore, il suo framework cross-platform di sviluppo Javascript ispirata a Cocoa, con una licenza MIT. Questa condivisione contribuirà ad offrire un’alternativa a Flash nel campo delle Rich Internet Applications. SproutCore non compete con flash nella realizzazione di spot animati o applet di navigazione, ma piuttosto nello sviluppo di applicazioni complete altamente interattive, ovvero l’obiettivo dei piani di Adobe per la propria piattaforma Air, basata su Flash

Dilger ipotizza addirittura un nuovo scenario: Apple potrebbe estendere in futuro la filosofia di App Store (che ancora dobbiamo vedere e conoscere, però) alle Web Application. Gli strumenti ci sono: vedremo che cosa ci riserverà il futuro. Ci sarà una nuvoletta a farci compagnia?

Vuoi rimanere aggiornato tramite email su questo argomento?
Iscriviti alla nostra newletter, è gratis e veloce!

Articoli Correlati
YARPP
Strobe, già 2,5 milioni di $ di finanziamento

Strobe, già 2,5 milioni di $ di finanziamento

SproutCore è il  framework Javascript sviluppato da Apple con cui sono state costruite le applicazioni web di MobileMe. Ne avevamo parlato approfonditamente un paio di anni fa (vedi: SproutCore, il […]

Il fondatore di SproutCore si mette in proprio

Il fondatore di SproutCore si mette in proprio

Un paio di anni fa vi parlammo di SproutCore, una piattaforma Open che permette di realizzare applicazioni Javascript, creata originariamente da Charles Jolley, assunto poi da Apple per mettere a […]

Snow Leopard: 64 bit, Grand Central, Open CL.

Snow Leopard: 64 bit, Grand Central, Open CL.

Tre termini che possono sembrare oscuri ai più, ma che da settembre, all’uscita di Snow Leopard in aggiornamento per ogni utente di Leopard, significheranno più potenza nei nostri Mac, anche […]

Mac OS X Snow Leopard: Open CL è già realtà

Mac OS X Snow Leopard: Open CL è già realtà

Ieri abbiamo parlato della possibilità che Mac OS X 10.6 Snow Leopard possa essere presentato da Apple già in occasione del MacWorld 2009. Oggi a suffragare ulteriormente questa possibilità giunge […]

Collaborano la comunità open source Open Office.org e IBM: ecco LOTUS SYMPHONY

Collaborano la comunità open source Open Office.org e IBM: ecco LOTUS SYMPHONY

Microsoft Office per Mac è la migliore suite per l’ufficio disponibile per Mac OS X. Non tanto perché sia un prodotto ottimo, ma perché mancano le vere alternative ad uno […]