Primo articolo della mia serie sullo sviluppo di prodotti indipendenti
Come sviluppatore mobile, il mio desiderio più grande è naturalmente scrivere un’app e aspettare che arrivino i soldi ( ͡° ͜ʖ ͡°).
Quali problemi si incontrano creando un’app da soli? Ho pubblicato da poco la mia e voglio condividere i problemi affrontati e come li ho risolti.
1. Definire il bisogno
Ognuno ha motivi un po’ diversi per voler creare un’app indipendente.
In grande, potresti vedere un bisogno urgente la cui soluzione cambierebbe il mondo: manca solo un programmatore.
Più modestamente, potresti voler vedere la tua app nell’App Store. Può essere un esperimento con una nuova tecnologia: dopo le estensioni Today di iOS 8 apparvero molte app originali basate su di esse. Oppure un’utilità che elimina un disagio quotidiano, come un gestore di file o un’app meteo ben progettata.
Individua un bisogno, grande o piccolo: ti darà la motivazione per continuare.
Per le esigenze di mia moglie creai un’app chiamata “File Manager”.
File Manager trasforma il telefono in un server. Gli altri dispositivi sulla stessa rete Wi-Fi possono gestirne i file dal browser: organizzare cartelle, copiare e spostare file, caricarli o scaricarli.
Definito il bisogno, impiegai circa tre mesi per pubblicare il progetto. Nel frattempo imparai un po’ di Swift.
2. Prototipi e interazioni
Con bisogno e soluzione, avrai già un’idea approssimativa del prototipo e dell’uso. Poi bisogna definire schermate e interazioni reali.
Provai alcuni strumenti di prototipazione, poi li abbandonai.
Il tempo per impararli e disporre le schermate sarebbe bastato a costruirle con xib. Alla fine usai schizzi a mano.
Creando altri prodotti capii poi che i prototipi sono necessari: prototipare significa ordinare la logica e renderla coerente.
3. E tutte le piccole icone?
Definito il prototipo, avevo un’idea della struttura generale. Oltre al codice restava però un problema inevitabile per ogni sviluppatore indipendente!
Come procurarsi tutte le piccole icone del progetto?
Ecco alcune librerie che ho usato:
- La libreria di Alibaba → Set completi di icone vettoriali con colori e dimensioni regolabili. L’uso commerciale richiede comunque il permesso dell’autore.
- icons8 → 56.500 icone piatte gratuite, per diverse piattaforme e persino con un’app Mac.
- iconfinder → Offre set completi con un modello più chiaramente commerciale.
4. Test personali e beta
In azienda tester, colleghi di prodotto e altri compagni migliorano l’app. Come può uno sviluppatore indipendente trovare e prevenire presto quanti più bug possibile?
4.1 Provare da soli
Ora devo svolgere il lavoro che prima affidavo ai tester. Oltre ai test manuali possiamo allevare una scimmia di test che ci aiuti.
4.2 Reclutare beta tester
Un’app indipendente richiede più ruoli: sviluppo, prodotto, gestione, assistenza e altro. Anche la promozione tocca a noi. Inizia da amici, compagni e familiari e annuncia sui social: la mia app è quasi pronta, aiutatemi a provarla!
I beta tester non trovano soltanto bug: nuove richieste e suggerimenti possono arricchire e migliorare ancora di più l’app.
4.3 Distribuire le build di prova
Se è facile ottenere gli identificatori dei dispositivi, usa un hosting beta come Pgyer o fir.im. Si applicano limiti ai dispositivi.
Se è difficile, usa TestFlight di Apple, aperto dopo iOS 8, con un massimo di 10.000 posti beta.
5. Screenshot per l’App Store
Perché una sezione a parte? Gli sviluppatori indipendenti hanno pochi canali promozionali: screenshot e descrizione sulla pagina App Store sono ingresso e vetrina dell’app.
Se appaiono scadenti, possiamo perdere chi ha appena scoperto l’app.
In azienda designer UI e colleghi di prodotto aiutano. Da soli, come ottenere immagini nelle dimensioni giuste?
5.1 Screenshot nel simulatore
Puoi catturare le schermate direttamente nel simulatore, anche se il risultato può sembrare grezzo.
5.2 Un po’ di rifinitura
Consiglio il sito gratuito shotbot. Carica il materiale e produce una serie completa di screenshot coerenti.
Nota del 2022-04-11: in seguito scrissi un’app Mac apposta per realizzare gli screenshot delle mie pubblicazioni su App Store.
6. Altre risorse usate
Per particolari interazioni e design, strumenti di terzi e icone pronte possono non bastare.
Allora modifica da solo le immagini!
Molti sviluppatori non sono esperti di Photoshop e alcuni non l’hanno mai usato. Che fare?
Ecco due siti: Online PS e l’editor web di Meitu
Puoi fare semplici modifiche nel browser senza scaricare il pesante software Adobe: una buona notizia per chi non padroneggia Photoshop.
Anche l’icona dell’app può essere un problema. Consiglio MakeIcon: carica un logo 1024×1024 e genera tutte le altre dimensioni, persino per iMessage su iOS 10.
7. Conclusione
Completai lo sviluppo con risorse esistenti e senza un designer UI. Se ne hai uno, puoi anche uscire  ̄ヘ ̄.
Volevo creare una mia app da molto. Iniziai davvero solo di recente, dopo aver chiarito ciò che serviva. Soprattutto, avevo finalmente un bisogno preciso e imparai un po’ di Swift.
Durante lo sviluppo passai perfino una settimana scrivendo pochissimo codice. Capii che il bisogno è ciò che spinge davvero a continuare: non conta quanto sia grande, ma che risolva un problema.
Con lo sviluppo aumentarono i requisiti: condivisione AirDrop, integrazione iCloud e ShareExtension erano ancora incompleti. Avanti, un’iterazione alla volta! ʘʚʘ (Non ammetterò che il motivo iniziale era condividere la mia “collection.avi” tra PC, telefono e iPad.)
Ecco il link alla mia app: Il modo più semplice di gestire file, File Manager
Nota del 2022-04-11: l’app non compare più nelle ricerche. Non avendo un buon modo di monetizzarla, la vendetti a una società di outsourcing. La vendita mi fece riflettere molto; il prossimo articolo entra nei dettagli.
L’articolo originale fu pubblicato su Jianshu. Il mio account fu poi compromesso e gli altri articoli continuavano a essere bloccati. Ora migro tutti i post su github.io.