Intervista a Marco Lucio Lovetere, sviluppatore di Remote Phone


ecentemente abbiamo recensito l'applicazione Remote Phone, progetto tutto italiano che realizza la gestione da remoto del nostro cellulare (Computer e cellulare lavorano insieme con Remote Phone).
Di seguito, un'intervista realizzata da "L'Androide Minimalista" con lo sviluppatore, Marco Lucio Lovetere.


Il punto di forza di Remote Phone che è stato messo in luce su L'Androide Minimalista è la capacità di integrare il funzionamento di due distinti oggetti come il cellulare e il computer in una sinergia costruttiva e funzionale per l'utente.
A questo proposito, come avete lavorato su questo punto durante lo sviluppo e a quali modelli esistenti vi siete ispirati?


Il punto di forza di Remote Phone è appunto l'interazione tra mondo mobile e PC attraverso la rete internet, sia WiFi che 3G. Si potrebbe dire che tutto sia nato da un'esigenza personale: avevo la necessità di controllare lo stato del telefono senza distogliere lo sguardo dal monitor. Il resto è arrivato un po' per gioco, dando seguito alle mie esigenze e alla mia fantasia. Proprio per questo motivo mi capita spesso di definire Remote Phone come l'app che io avrei voluto trovare sul market, ma che non c'era ancora.
Non ho avuto dei modelli a cui ispirarmi, anche per il carattere innovativo dell'applicazione, tuttavia, trattando dati sensibili come la rubrica, gli SMS e la posizione degli utenti ho cercato di ispirarmi a soluzioni tecniche che a loro volta avessero in qualche modo conquistato la mia fiducia.




Nelle tue passate esperienze di sviluppatore, ti sei mai trovato a dover integrare due sistemi differenti perchè collaborassero a fornire un unico servizio come fa Remote Phone?

No, è la prima volta che mi cimento in un progetto simile. L'idea mi ha comunque sempre affascinato perché penso che oggi non si possa più vivere a compartimenti stagni, ma che la nostra società ci stimoli continuamente all'aggregazione. In fin dei conti, tutto quello che c'è di intangibile nel web è un riflesso della società, per questo motivo penso di essermi limitato a seguire gli stimoli della vita di ogni giorno.


Queste due situazioni sono i due estremi dello sviluppo software: una sola, vasta applicazione che racchiude al suo interno funzioni per ogni esigenza, oppure piccole applicazioni atomiche che svolgono perfettamente un unico piccolo compito. Quali vantaggi e svantaggi vedi nei due modelli e quando credi sia da preferire l'uno o l'altro?

Sicuramente, le grandi applicazioni che racchiudono molte funzionalità sono più soggette a problemi: è un po' come portare un vassoio di bicchieri d'acqua, più bicchieri trasportiamo e più difficile diventa tenere il vassoio in equilibrio. Allo stesso modo un'applicazione banale che faccia poco, è si più facile da curare, ma allo stesso tempo poco appetibile per gli utenti rispetto a quelle più complete: per restare nella metafora, è più facile portare un solo bicchiere, ma il risultato finale è che viene servito un solo cliente.
Io personalmente preferisco una via di mezzo e tra l'altro è anche l'approccio usato in Remote Phone. Si tratta di progettare il nucleo dell'applicazione in modo robusto, pensando di lavorare su una piccola unità che faccia solo una cosa (è come se progetto il vassoio nella maniera più completa e affidabile possibile). Dopo essersi presi cura del cuore dell’applicazione che potremmo pensare autonoma, inizio a sviluppare le singole funzioni, come se si trattasse anche in questo caso di blocchi indipendenti. Il che equivale semplicemente ad aggiungere o togliere di volta in volta i bicchieri che mi servono, il tutto con grande semplicità e comunque lavorando su una base assolutamente solida.
Probabilmente, dal punto di vista di chi programma, questa architettura modulare può sembrare un po' macchinosa, ma consente di distribuire i problemi e controllare le situazioni pericolose.


Come avrai forse potuto leggere nei post già pubblicati, questo blog si occupa di minimalismo applicato alla tecnologia, in particolare a quella Android. Cosa pensi dell'approccio minimalista allo sviluppo software e quali vantaggi/svantaggi ci vedi?

Ritengo che sviluppare in modo minimalista significhi concentrarsi solo sugli aspetti chiave dell'applicazione in modo analitico: in programmazione la mia filosofia è divide et impera, ovvero dividi un problema in problemi più piccoli per gestirli più facilmente. Questo è secondo me uno sviluppo minimalista.


Quali sono i prossimi sviluppi programmati per Remote Phone?

Posso anticiparti che adesso sto lavorando al portale web per renderlo più intuitivo e in grado di aggregare le informazioni degli utenti per una maggiore usabilità.
Di sicuro ho intenzione di aumentare il controllo del dispositivo da remoto aggiungendo sempre più opzioni. Poi c'è il tema della privacy e sicurezza al quale sono molto sensibile: in generale cerco di trovare delle soluzioni che convincano me in prima persona, per questo sono alla continua ricerca di miglioramenti. Intanto sono molto soddisfatto dei risultati raggiunti fino ad oggi perché non è facile conquistare la fiducia delle persone quando si tocca un tema delicato come la privacy.
[Nota: A proposito di privacy, Marco ci ha segnalato che recentemente è stato rilasciato un importante aggiornamento sulla sicurezza: adesso anche la connessione dati su cui viaggiano i dati (i nostri SMS ad esempio!) è crittografata.]



Grazie a Marco per l'intervista.
Chi desiderasse contattarlo direttamente, può scrivere a remotephone.mobi@gmail.com.

4 commenti:

  1. peccato che nulla a parte la sincronizzazione messaggi e posizione funziona.... non è neanche settato il fuso orario giusto...

    RispondiElimina
  2. Davvero? A me invece (con in HTC legend) funziona tutto perfettamente...

    RispondiElimina
  3. Ciao Turion,

    per il fuso orario puoi configurare il timezone nelle impostazioni del tuo profilo.
    Per il resto se riscontri dei malfunzionamenti mandami pure una mail con i dettagli e proverò a darti una mano.

    Ciao.

    RispondiElimina