App-proposito delle App…

“In questa vita imperfetta abbiamo bisogno anche di una certa quantità di cose inutili. Se tutte le cose inutili sparissero, sarebbe la fine anche di questa nostra imperfetta esistenza.”
Haruki Murakami

Vale ancora la pena parlare delle app? Secondo me, si.

Parliamo ovviamente delle “app” per il nostro smartphone, che spuntano velocemente (e spesso muoiono altrettanto velocemente) da ogni parte e in ogni dove. Sarà una conseguenza della “sindrome dell’annuncio”, che periodicamente colpisce in ordine sparso aziende, enti e istituzioni (“Habemus app!”). Sarà perché qualcuno ancora crede che avere una “app” sia ancora “fico”, ignorando che nei vari store Android e iOS ci sono già milioni di app (quasi 2 milioni nell’Apple Store, poco più di 2 milioni e mezzo nel Google Play) di cui solo una piccolissima parte riscuote adeguato successo (per “adeguato” intendo un ritorno d’immagine e/o di fatturato adeguato all’investimento).

Preciso immediatamente che parlo di app sviluppate in modo e per scopi professionali, non di app didattiche, progetti personali o esperimenti vari: in questi casi valgono tutt’altre considerazioni, che esulano da questa riflessione.

L’aspetto economico

Aspetto non marginale: quanto vogliamo spendere per la nostra app? Secondo una ricerca, sviluppare una app decente ha un costo dai 10.000$ in su. Dipende ovviamente da molti fattori, tra i quali anche il costo degli sviluppatori, ma le cifre necessarie per sviluppare una app “decente” non sono trascurabili e non sempre ne vale la pena. Il costo dipende da molti fattori, tra i quali la qualità stessa del codice che compone l’app (le app è sono software, programmi progettati per essere eseguiti su ambienti come iOS o Android). Parliamo poi di tutto il ciclo di sviluppo del software stesso, a iniziare dall’UX –User eXperience-, che include tutto il processo di progettazione dell’interfaccia grafica, dell’interazione degli utenti con essa, dell’aspetto sulle varie tipologie di dispositivi. Per proseguire con la compatibilità con i dispositivi sul mercato.

Compatibilità e mercato

Ricordate ancora il vostro primo smartphone? Io si, era un LG GW620, il primo smartphone con Android. Il sistema operativo era Android 1.5 e aveva disponibile 150MB di spazio: nel 2009, 12 anni fa, rappresentava il primo passo di una grande rivoluzione nel mercato degli smartphone. Oggi, su questo smartphone, non riuscirebbe a “girarci” neanche WhatsApp.

Durante la pianificazione di una “app” è opportuno valutare la “fetta di mercato” nella quale vogliamo inserirci, partendo dal market share della piattaforma target (iOS o Android):

Più vogliamo che la nostra app sia retro-compatibile, ovvero installabile sui dispositivi meno aggiornati, e più il suo sviluppo sarà difficile e complesso. Se, all’opposto, puntiamo solo sulle ultime release velocizzandone lo sviluppo, automaticamente escludiamo una fetta più o meno ampia del mercato.

Fetta che ovviamente muterà nel tempo, con l’uscita di nuovi dispositivi ancora più moderni, aggiornati, prestazionali. E con una nuova versione del sistema operativo a bordo, che renderà velocemente obsoleta la vostra app.

Ciclo di vita

Quanto deve vivere la mia app? Già, perché pubblicare l’app sullo store, con l’immancabile annuncio in pompa magna a mezzo stampa, è solo il primo passo. Di una maratona, non di uno sprint. Mantenere aggiornata una app, così come qualunque altro software, è la parte più difficile e onerosa, sia in termini economici che lavorativi.

Difficilmente tutto filerà liscio al primo tentativo: ci saranno dispositivi dove l’app darà problemi e gli utenti chiederanno assistenza. Ci sarà quindi da fare le correzioni e un nuovo rilascio. E poi attendere gli altri problemi.

Dopo qualche mese uscirà una nuova versione di Android e i nuovi smartphone avranno a bordo il sistema operativo nuovo. Pian piano, cambieranno anche i segmenti di mercato e rischiamo che, in qualche anno, la nostra app sia diventata talmente obsoleta da non essere più compatibile con i nuovi dispositivi. Ci sarà quindi da spendere nuovamente per aggiornare il software con le nuove librerie, verificare le compatibilità, rivedere l’interfaccia (niente è peggio di una interfaccia “vecchia”) e rilasciare il tutto.

Standard VS proprietario

Le piattaforme Android e iOS sono proprietarie, il che significa che non debbano rispettare alcuno standard internazionale e sono libere di attuare tutte le modifiche che ritengono opportune. Possono decidere di escludere alcune app, premiarle altre, imporre nuovi vincoli (come aumentare i costi per poter pubblicare negli store), cambiare le librerie etc etc etc…

Il Web, invece, rispetta standard aperti universalmente noti e accettati, come HTML, CSS, JavaScript, che difficilmente varieranno nel breve periodo: i siti web e le web app non sono soggette ai vincoli delle piattaforme proprietarie e l’uso di queste tecnologie non comporta alcuna fee (a differenza di alcuni SDK o dell’accesso allo store). Inoltre, praticamente tutti i browser web garantiscono una base comune di compatibilità, aumentando quindi la platea dei potenziali utenti. Se avete dubbi sulle tecnologie supportate dal Vs browser, esistono numerosi portali che ne analizzano le potenzialità, come HTML5Test (che verifica la compatibilità con il nuovo standard HTML5). Per un supporto sulle tecnologie, potete invece consultare il sito web Can I use….

Insomma, se non lo avete ancora intuito, è l’ora di puntare su un buon sito web mobile first!

(Ringrazio il dott. Lorenzo Vainigli per la riflessione)

Meglio un buon sito web mobile first!

Da qualche anno la filosofia che anima gli sviluppatori web è “mobile first“. Significa, in poche parole, che il sito web deve essere funzionale principalmente per chi lo visita dallo smartphone. Del resto, le statistiche parlano chiaro: ormai gran parte del traffico verso i siti web viene effettuato dai browser dei dispositivi mobili, che hanno caratteristiche e peculiarità del tutto particolari (ad es. la possibilità di ottenere la geolocalizzazione).

Invece di preoccuparvi di una “app”, avete verificato che il sito web aziendale o istituzionale sia usufruibile da dispositivo mobile? Ci sono strumenti on-line che possono aiutarvi, come il Test ottimizzazione mobile di Google Search o i vari tool di sviluppo integrati nel browser, come Lighthouse di Chrome. E poi, il sempre utile web.dev per migliorare le prestazioni, l’accessibilità e la SEO del vostro sito.

Un buon sito web, godibile anche da smartphone, è sicuramente più efficace di una nuova app. Perché le app non vanno solo progettate e sviluppate: gli utenti devono installarla e usarla! Quante volte vi è capitato, ad esempio, di non avere spazio sullo smartphone per l’ennesima app? Oppure che, una volta installata, quell’app non funzioni correttamente? Insomma, l’esperienza di un cliente con la vostra nuova app potrebbe essere decisamente frustrante, con ripercussioni non trascurabili anche sotto l’aspetto reputazionale.

“La mia app è solo un frontend per il web!”

Mi è capitato di sentirmi dire che “l’app è solo un frontend per la pagina web!“. Capita più spesso di quanto pensiamo: la necessità di partorire l’ennesima app, in fretta e furia, porta ad affidarsi a soluzioni low-code che, in poche parole, effettuano una specie di embedding del sito web dentro l’app. Ho difficoltà a capirne il senso, visto che non sempre i vantaggi sono evidenti (escluso, ovviamente, il consumare prezioso spazio nello smartphone degli utenti/clienti).

Ci sono ovviamente situazioni in cui è necessaria una app. Ad esempio tutte quelle che necessitano di una interazione più diretta con l’utente o di misure di sicurezza più evolute (ad es. le applicazioni dell’home banking), oltre che tutte quelle situazioni in cui si utilizzano i sensori e dispositivi dello smartphone.

Questa mia veloce disamina delle difficoltà connesse allo sviluppo di una app non significa che ne sia contrario a prescindere. Come ogni cosa, devono essere attentamente valutati i pro e i contro: seguire le “mode” non è sempre la soluzione migliore.

Concludo con una precisazione: non sono un sviluppatore di app. Ho fatto consulenza, anche per lavoro, a chi aveva bisogno di sviluppare una app (o che l’aveva già sviluppata) cercando, prima di tutto, di far chiarezza su cosa comporta e cosa significa sviluppare, gestire, mantenere una applicazione per dispositivi mobili.

Sarebbe interessante poter sviluppare un confronto sul tema con qualche sviluppatore che, sicuramente, potrà anche sconfessare quanto da me sostenuto: forza, non siate timidi!

Concludo con un elenco delle app per Android che utilizzo con viva soddisfazione e che consiglio urbi et orbi:

  • F-Droid, alternativa libera al Google Play Market;
  • SlimSocial, ottima alternativa all’app ufficiale di Facebook. Leggero, veloce, non rallenta lo smartphone e non divora la batteria. Sviluppato da un nostro connazionale;
  • FairMail, client di posta elettronica leggero, sicuro (open source) e orientato alla privacy;
  • Infinity, client non ufficiale per Reddit;
  • Adobe Scan, l’applicazione perfetta –gratuita ma non open source– per usare lo smartphone come scanner portatile. Esporta direttamente in PDF o JPG;
  • DuckDuckGo, motore di ricerca rispettoso della privacy alternativo a Google;
  • KeePass2Android, password manager compatibile con il formato KeePass2, indispensabile per memorizzare le credenziali in modo sicuro;
  • Signal, non solo app sicura di chat ma anche gestore SMS;
  • JitsiMeet, l’app per la piattaforma di videoconferenze libere e gratuite Jitsi Meet;
  • NicePlaces, app sviluppata da due ragazzi italiani per farvi scoprire le bellezze del nostro Paese;
  • NewPipe, frontend alternativo a YouTube per Android, senza pubblicità;

Foto di copertina: installazione artistica sul Lago Trasimeno, Castiglion del Lago (PG).

Ti è piaciuto questo articolo?

0 Condivisioni
Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.