Android il sistema per sviluppatori creativi

Posted by Stefano |15 May 11 | 0 comments

Il confronto tra iOS e Android è sempre un argomento di discussione interessante sia per gli utenti che per gli sviluppatori … trovare un vincitore tra i due sistemi è sempre molto difficile perchè entrambi hanno delle caratteristiche e funzionalità che lo rendono unico ed affascinante agli occhi degli utilizzatori e dei programmatori… infatti, da un lato (iOS) un sistema chiuso con regole nello sviluppo della Apps molto rigide ma estremamente facile ed intuitivo nell’utilizzo; dall’altro (Android) il fascino della libertà dove lo sviluppatore non ha vincoli restrittivi su funzioni hardware da usare ma questo in certi casi si rispecchia in un sistema un po meno intuitivo soprattutto nell’utilizzo di funzionalità evolute del sistema.

In questo periodo mi trovo quotidianamente a confrontare i due sistemi, analizzare i rispettivi store e comprendere come le differenti filosofie influenzano i gli utenti…il dato più evidente da questi confronti è che gli utenti iOS sono disposti a ricorrere alla carta di credito in più occasioni rispetto agli utenti Android che magari preferiscono App gratuite anche se,in alcuni casi, la qualità è leggermente inferiore delle rispettive versioni a pagamento;ma  risulta vero anche il contrario in cui le Apps gratuite in certe occasioni risultano migliori di quelle a pagamento.

L’aspetto interessante osservato dal confronto tra iOS ed Android è come in quest’ultimo sistema operativo gli sviluppatori hanno la possibilità si realizzare e commercializzare applicazioni più innovative e creative rispetto ad iOS … questa propensione all’innovazione di Android è garantita dalla filosofia Open adottata da Google che permette agli sviluppatori di andare a “mettere mano” anche in aree del sistema operativo che Apple preferisce mantenere chiuse per non intaccare la semplicità e la stabilità del suo OS.

Esempi di App che si trovano solo sull’Android Market, perchè in iOS ufficialmente non possono essere realizzate, sono applicazioni per la sostituzione della tastiera come Swype and Swiftkey che, grazie ad approcci innovativi (soprattutto Swiftkey), permettono di scrivere più velocemente ed efficacemente della tastiera virtuale nativa dell’OS… purtroppo però queste soluzioni esistono solo per Android e non per iOS in quanto Apple non permette agli sviluppatori di accedere ad aree di strumenti di base del sistema per paura che questi rendano il sistema meno stabile e riducano la User Experience degli utenti.

Negli ultimi mesi ho visto un crescente numero di sviluppatori lanciare le proprie Apps solo su Android perchè ritengono iOS troppo restrittivo alla loro creatività … alcuni esempi sono: Enterproid, Aro Mobile, Contapps RadioMe ecc….Questo crescente interesse degli sviluppatori nei confronti del sistema operativo di Google non è solo dovuto al successo di vendite che gli Smartphone con Android stanno avendo sul mercato grazie all’ampia gamma di dispositivi in commercio ( infatti si trovano smartphone targati Google a partire da 99€,comprendo tutte le fasce di mercato) ma è anche dovuto agli sviluppatori che stanno aumentando il loro interesse sul robottino Verde di BigG per stanno trovando in questo ambiente di sviluppo maggiore libertà per realizzare applicazioni creative ed innovative che possono migliorare le abitudini di lavoro in mobilità degli utenti. Grazie alla filosofia Aperta di Google gli sviluppatori possono avere accesso alle funzioni principali del telefono, la capacità di integrare con le Api di terze parti e, in alcuni casi, andare a sostituire anche le funzioni native di Android atteggiamento impensabile in Apple dove vengono rifiutate tutte le App che si avvicinano alle funzioni di iOS o che fanno uso di funzionalità non consentite da Apple.

L’approccio di Apple è quello di continuare ad adottare una linea forconsumer trascurando un po la vera anima del successo dell’App store che sono gli sviluppatori di App; i quali hanno bisogno di maggiori strumenti (API) per sfruttare completamente l’hardware che iPhone,iPod Touch e iPad forniscono per realizzare applicazioni creative ed innovative.
Da questo punto di vista Apple deve imparare da Google in quanto Android attualmente è il sistema che permette di innovare il mondo mobile con App particolari e capaci di fare la differenza.

Riassumendo Android è ritenuto dagli sviluppatori l’ambiente ideale per innovare ed introdurre applicazioni creative che possono andare a modificare, sostituire o aggiungere funzionalità al sistema operativo ma presenta una serie di limiti non sottovalutabili che riducono la produttività e la qualità delle App; infatti, l’accesso a funzioni hardware e software del sistema android sono accessibili agli sviluppatori ma non è facile utilizzarle perchè BigG non fornisce degli strumenti semplici per accedere a tali funzionalità. Google dovrà trovare il modo di rilasciare delle API e/o dei servizi capaci di facilitare la vita degli sviluppatori in più, allo stato attuale, il un grosso problema è l’eccessiva frazionamento del sistema che prevede troppe versioni diverse rilasciate da Google (smartphones e tablets) alle quali si aggiungono le personalizzazioni dei vari carrier telefonici… questo atteggiamento di frammentazione complica non poco la vita degli sviluppatori che una volta realizzata l’App o il servizio devono svolgere un carico eccessivo di testing sulle diverse release del prodotto per verificarne la compatibilità.

Un primo passo verso la risoluzione del problema della frammentazione è arrivato dal recente Google I/O 2011 in cui è stato presentato Android Ice Cream Sandwich ( sarà disponibile solo nel tardo 2011) il cui primo obiettivo è quello di fondere le due diverse versioni di Andorid che conosciamo la 2.x e la 3.x .
L’Obiettivo dichiarato di Google con Ice Cream Sandwich è quello di ottenere un sistema operativo mobile che giri ovunque, sia sul vostro smartphones che sul vostro tablet, con un’unica interfaccia e unica User Experience.In più è stata presentata una nuova modalità per l’accelerazione grafica hardware che,per il momento, sarà utilizzata solo nei tablet. L’utilizzo dell’accelerazione grafica hardware permette di sfruttare al meglio le risorse hardware video che i nuovi dispositivi mettono a disposizione e che gli sviluppatori potranno utilizzare, attraverso apposite API fornite da Google, per realizzare applicazioni più potenti ed innovative di quanto fatto fino ad ora per il settore grafico e videoludico. Altro aspetto interessante su cui Google punta per incentivare la creatività e la voglia di innovare degli sviluppatori è quella di far vedere nuovi modi e settori in cui utilizzare il robottino verde…. infatti BigG vuole Android come come un’estensione del proprio corpo umano nel senso che con esso si può controllare la propria casa semplicemente con un Touch… insomma hanno introdotto ufficialmente il robottino anche nel mondo della domotica sperando in un nuovo impulso creativo degli sviluppatori.

In conclusione Google continua a spingere su Android e gli sviluppatori apprezzano questo sistema perchè possono innovare e fornire ai loro clienti soluzioni nuove ed interessanti che in iOS non possono essere fatte per una policy molto restrittive.Concordo che Android induce e permette agli sviluppatori maggiore fantasia nella realizzazione delle App… ma il consiglio che voglio dare ad essi è quello di ricordarsi di porre sempre molta attanzione al concetto di User Experience perchè gli utenti non sanno di cosa fare dell’innovazione se questa non è usabile  e richiede una curva di apprendimento molto lunga … per dispositivi mobili la curva di apprendimento è molto breve…se un’app richiede più di 5 minuti per essere capita viene ritenuta difficile… mentre se richiede pochi secondi o qualche minuto allora è semplice!!!
Quindi Android è l’ambiente ideale per innovare perchè tutto è aperto e alla portata di ogni sviluppatore ma non bisogna mai perdere di vista l’obiettivo principale dello sviluppo ciè un App semplice, utile e immediata nell’apprendimento nell’utilizzo delle App.Il mio consiglio, per chi si avvicina allo sviluppo di App, è quello di sviluppare contemporaneamente su entrambe le piattaforme magari dando ad Android qualche funzione in più che con iOS non è possibile per via delle  policy restrittive… ma non concentratevi solo in un’unica piattaforma.


No Responses

Leave a Reply