Poco tempo fa, è apparsa su questo blog la recensione dell'applicazione "Calll", utile strumento per ridurre l'inquinamento elettromagnetico del cellulare (leggi la recensione).
Il suo sviluppatore, Enrico Cambiaso, ha accettato di rispondere a qualche domanda sul suo stile di programmazione.
D.
Innanzitutto grazie di aver accettato questa intervista. Per iniziare, parlaci brevemente di te: quando è iniziata la tua attività in campo informatico? Per te si tratta di un hobby o di una professione?
Ciao, devo dire che sono sempre stato appassionato di informatica e tecnologia, fin da bambino, anche se il mio primo PC è arrivato abbastanza tardi, all'età di 14 anni, ed era condiviso con mio
fratello... in pratica io facevo i casini e mio fratello si ritrovava senza computer per un paio di giorni... Cosi' piano piano mi sono attrezzato, recuperando componenti hardware da conoscenti, tramite gruppi di trashware o andando in giro per aziende: alla fine mi sono creato un PC tutto mio a costo zero.
Attualmente sono studente per la laurea specialistica in informatica, pertanto l'informatica si sta trasformando da hobby a professione. In questo ultimo periodo sto seguendo l'evoluzione tecnologica dei prodotti consumer, ed e' stato questo mio interesse a portarmi verso Android.
D.
Una delle tue creazioni, Calll, è stata recensita poco tempo fa su "L'androide minimalista". Come è nata l'idea di creare un'applicazione per proteggere il cervello dalle radiazioni emesse dal cellulare durante le chiamate?
Io sono uno di quelli che hanno 100 idee, ma per problemi di tempo ne implementa una, quando va bene...
L'idea di Calll mi e' nata durante il periodo di Antenna-gate, quando tutto il mondo era concentrato sul problema che ha colpito il nuovo iPhone 4... semplicemente ho pensato che tutte le case costruttrici cercano il prodotto perfetto, quando in realtà sono ancora ben lontane dal vendercelo. il prodotto perfetto e' quello che, almeno in certi contesti, riduce l'interazione con l'utente al minimo e si occupa di tutto il resto in modo invisibile, di tutte le cose "ovvie" (pessimo termine, ma dovrebbe rendere l'idea) od ottimizzabili, seppur delegando all'utente le decisioni, se questo ha intenzione di prenderle.
Apple, Google, Microsoft... tutte quante hanno la soluzione (o per meglio dire, le soluzioni) dietro l'angolo, ma non hanno (ancora) intenzione di impegnarsi sotto questo punto di vista, o preferiscono fare in modo che siano gli sviluppatori ad occuparsene. Ogni telefono dovrebbe uscire di fabbrica con una implementazione analoga a quella di Calll e molte altre applicazioni che ancora devono scaturire. Dovrebbero essere obbligate per legge. Del resto, alla fine Calll e' stata scaricata da pochissime persone in confronto a molte "applicazioni-spazzatura": la maggior parte degli utenti non vuole applicazioni "invisibili" (per semplicità, mi permetto di chiamarle così) in quanto spesso non forniscono abbastanza risultati in tempi rapidi, o addirittura ripongono una totale fiducia nel brand, senza interessarsi di questi aspetti, tanto di sicuro il brand se ne è già occupato.
Pensate un attimo alla sicurezza in auto (o vetture in generale): da anni si spendono moltissime risorse per migliorare la sicurezza degli automobilisti, anzi, spesso il livello di sicurezza offerto da un'auto è un elemento fondamentale nella scelta della stessa. Nel campo della telefonia mobile dovrebbe essere la stessa cosa.
Per quanto riguarda me, passo parecchio tempo al telefono ogni giorno e cerco di utilizzare gli auricolari il più possibile, non per una fissazione, ma semplicemente perchè è un modo semplice ed efficace per allontanare la fonte di radiazioni dalla mia testa; oramai è certo che i telefoni siano un'estensione del nostro corpo, ma non questa estensione non deve essere nociva.
Poco dopo l'idea ero alla ricerca di una applicazione simile, magari qualcuno la aveva già implementata, in tal caso la avrei installata subito, ma nessuno aveva avuto la mia stessa idea. Una settimana dopo mi sono ritrovato una mattina libera e ho deciso di implementare Calll. Sapevo benissimo che l'avrei pubblicata gratuitamente, perchè alla fine e' un prodotto che può davvero migliorare la salute degli utenti, e tutti i prodotti del genere dovrebbero essere rilasciati gratuitamente, o ad un prezzo utile a ricoprire le spese.
D.
Uno degli aspetti più interessanti dell'applicazione, da un punto di vista minimalista, è senza dubbio la sua autonomia: l'intervento dell'utente è richiesto solo per i settaggi iniziali, poi possiamo lasciare che Calll lavori per noi senza più preoccuparcene. Quanto ritieni sia importante, in un'applicazione, l'autonomia? Come credi influenzi l'esperienza dell'utente? Come tieni conto di questo nelle tue attività di sviluppo?
Per alcune applicazioni l'autonomia è fondamentale, bisogna cercare di ridurre al minimo gli interventi dell'utente, tenendo però conto (cosa che non tutti fanno) che l'utente deve avere la possibilità di configurare il più possibile il comportamento dell'applicazione. Spetta a lui il controllo.
D.
Sviluppando un'applicazione, Android oppure per altri sistemi, quali sono gli aspetti che tieni più in considerazione?
Di sicuro la piattaforma: occorre imparare a sfruttare a pieno la tecnologia offerta, in questo modo si impiegano meglio le risorse e si riducono gli errori.
Occorre inoltre tenere conto che se si sta sviluppando software su piattaforma mobile bisogna ottimizzare il consumo di batteria: l'applicazione non può essere troppo invasiva (di sicuro ci sono cose più importanti, ad esempio l'utente può avere la necessita' di fare una telefonata da un momento all'altro, e l'applicazione non deve ostacolarlo, anzi, dovrebbe rendergli le cose più semplici) e lo spazio potrebbe essere un problema.
D.
Cosa ti piace del sistema Android e dello sviluppo di applicazioni per esso? Dal punto di vista di un programmatore, nonostante i problemi di compatibilità che su piattaforme chiuse (ad esempio iPhone di Apple) non si verificano, un sistema aperto per la telefonia è un'idea vincente?
Si tratta di due filosofie completamente diverse, a mio avviso entrambe valide e rivolte a diverse tipologie di utente.
Un sistema aperto dà più libertà ad utenti e sviluppatori, io posso sviluppare un software come meglio preferisco, senza che nessuno mi dica nulla, cosi' come un malintenzionato può sviluppare un software che danneggi l'utente: un sistema aperto delega il controllo all'utente o a terzi, mentre in un sistema chiuso, come quello di Apple, e' l'utente a fidarsi (a volte fin troppo) dei controlli e delle scelte effettuate dal brand.
D.
E' recente la nascita di AppInventor: un tool che Google mette a disposizione per permettere anche a chi non è un programmatore di sviluppare facilmente applicazioni per Android (Vedi il post). La qualità dei programmi nel market potrebbe abbassarsi, ma l'apertura del sistema si ingigantisce e include anche chi non è un vero e proprio tecnico: tu cosa pensi di questa iniziativa?
Semplicemente AppInventor fornisce un ambiente di sviluppo a più alto livello, permettendo a molte persone senza particolari conoscenze di sviluppare la propria applicazione. Non e' detto che la qualità del software peggiori, quello dipende dagli sviluppatori; anzi, per alcuni AppInventor potrebbe essere la soluzione ottimale.
AppInventor è la soluzione in grado di raggiungere gran parte dei non-sviluppatori, insegnandogli le basi della programmazione e fornendo un ambiente di testing ed implementazione user-friendly.
D.
Spazio libero: vuoi aggiungere qualcosa da dire a chi leggerà l'intervista?
Ricordate che idee migliori sono dietro l'angolo: informatevi, rimanete aggiornati, perchè e' il modo più rapido per individuarle!
Grazie a Enrico per la sua disponibilità.
Nessun commento:
Posta un commento