Se crei applicazioni per il web non avrebbe senso svilupparle online? Con questa domanda e con uno slogan ben congegnato (Il tuo codice sempre disponibile, ovunque tu sia) Cloud9 IDE si presenta finalmente al pubblico. L’idea iniziale era una piattaforma online condivisa e open source per sviluppare codice JavaScript direttamente nel browser. Talento e ambizione hanno consentito di puntare più in alto e Cloud9 è diventata una piattaforma completa per la produzione di software in the cloud (PaaS). Ma vediamo meglio di cosa si tratta.
Già un mese fa presentando il Progetto Orion accennavo a Cloud9, allora in beta avanzata. Erano disponibili pochi dettagli e soprattutto mancavano i prezzi. Partiamo dalle caratteristiche salienti.
Punti di forza
Cloud9 si vanta di possedere il miglior editor online per linguaggi dinamici. In effetti l’editor è un progetto originale Mozilla (Skywriter), poi integrato in Ace. Il codice viene convalidato in tempo reale ed è possibile fare debug e lanciare applicazioni direttamente dal browser. Molte le funzioni per la collaborazione: chat integrato, modifiche condivise in tempo reale, team management e, dulcis in fundo, integrazione completa con GitHub (una UI per GitHub è in lavorazione, al momento è disponibile la classica linea di comando). Vedere per credere:
<p class="wp-caption-text">
Editor per linguaggi dinamici integrato nel browser
</p>
</div></td>
<td>
<p>
<div id="attachment_1274" style="width: 220px" class="wp-caption alignright">
<a href="images/cloud9_2.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1274 " title="Convalida del codice JavaScript in tempo reale" src="http://i0.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_2-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Convalida del codice JavaScript in tempo reale
</p>
</div></td> </tr>
<tr>
<td>
<p>
<div id="attachment_1275" style="width: 220px" class="wp-caption alignright">
<a href="http://i2.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_21.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1275 " title="Chat intengrato in Cloud9" src="images/cloud9_21-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Chat intengrato in Cloud9
</p>
</div></td>
<td>
<p>
<div id="attachment_1276" style="width: 220px" class="wp-caption alignright">
<a href="http://i0.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_4.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1276 " title="Gruppi di lavoro" src="http://i0.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_4-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Gruppi di lavoro
</p>
</div></td> </tr>
<tr>
<td>
<p>
<div id="attachment_1277" style="width: 220px" class="wp-caption alignright">
<a href="images/cloud9_5.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1277 " title="Run e Debug online" src="http://i1.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_5-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Run e Debug online
</p>
</div></td>
<td>
<p>
<div id="attachment_1278" style="width: 220px" class="wp-caption alignright">
<a href="images/cloud9_6.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1278 " title="Integrazione con GitHub" src="http://i1.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_6-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Integrazione con GitHub
</p>
</div></td> </tr>
<tr>
<td>
<p>
<div id="attachment_1279" style="width: 220px" class="wp-caption alignright">
<a href="http://i2.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_7.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1279 " title="Team Management" src="images/cloud9_7-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Team Management
</p>
</div></td>
<td>
<p>
<div id="attachment_1280" style="width: 220px" class="wp-caption alignright">
<a href="images/cloud9_8.png" rel="lightbox[1208]"><img class="size-thumbnail wp-image-1280 " title="Accedi al codice ovunque tu sia" src="http://i1.wp.com/nicolaiarocci.com/wp-content/uploads/cloud9_8-150x100.png?w=150" alt="" data-recalc-dims="1" /></a>
<p class="wp-caption-text">
Accedi al codice ovunque tu sia
</p>
</div></td> </tr> </tbody> </table>
<h2>
Linguaggi e Frameworks
</h2>
<p>
JavaScript naturalmente è supportato al 100%. Ruby anche, seppure parzialmente. Cloud9 mira a integrare tutti i linguaggi e i framework più diffusi. Per quanto riguarda i linguaggi della galassia Microsoft per ora nulla da fare (ma c’è sempre <strong><a href="http://www.coderun.com/">CodeRun</a></strong>), anche se ho colto un (molto) blando accenno a un futuro supporto per Mono. Cloud9 supporterà il <em>one-click-deploy</em> su altre piattaforme cloud e il mounting di drive locali per consentire l’accesso ai files remoti da parte di applicazioni esterne. Insomma il menù è ricco e invitante, bisognerà vedere a che ritmo si succederanno le implementazioni.
</p>
<h2>
Piani tariffari
</h2>
<p>
Qui la faccenda si fa ancor più interessante e per certi versi sorprendente. I progetti open source possono accedere a Cloud9 gratuitamente. Quelli commerciali possono scegliere tra due piani tariffari, uno giornaliero (€0.33/giorno) e uno mensile (€39/mese). Il piano giornaliero mi incuriosisce parecchio. Se ho ben capito si pagano solo i giorni di uso effettivo, se così fosse si tratterebbe di una soluzione davvero valida oltre che originale. Ad ogni buon conto è previsto un periodo di prova di 30 giorni.
</p>
<h2>
Coraggio!
</h2>
<p>
Sono intrigato un bel pò, l’avrete capito. Le titubanze sono legittime, per carità. Sicurezza e riservatezza sono aspetti importanti; queste piattaforme cloud potranno garantirle? Molti di noi hanno superato da tempo queste paure appoggiandosi (per progetti aperti e privati) a GitHub, Mercurial e altri servizi repository. E’ forse giunto il momento di cominciare a sporcarsi le mani. Prima o poi dovremo farci i conti comunque, non credete?
</p>