Archive for agosto 2010

Disegnare icone per iOS con Opacity

Ok, il mio intento di scrivere solo cose interessanti è bello che sparito, fino a metà Settembre sarò bello occupato con l’università.

Ho ripreso a lavorare alla mia prossima app per iOS, per ora è solo un’idea, niente codice scritto.
Prima di iniziare a disegnare l’UI(sto ancora aspettando che arrivi l’UI Stencil) mi sono messo giù a fare qualche schizzo dell’icona e a leggermi qualche tip nella rete.

Ebbene, guardando i vari tutorial che ci sono mi sono reso conto di quando sono fortunato(si fa per dire) ad aver acquistato Opacity, sarebbe da benedire l’autore ogni volta che devo fare l’export per iOS.

Ebbene direte voi, cosa ha di speciale questa applicazione per valere 90 bucks? Non esistono già tool come l’ottimo Inkscape per fare questo genere di lavori?
Risposta breve: Inkscape su OS X fa ca*are. Punto.
Risposta articolata: Prima di tutto io sono un nerd programmatore, la cosa migliore che dovrei fare(per i miei utenti) è quella di pagare qualcuno per disegnarmi l’icona, ma visto che al momento non dispongo di 400$ per quello…
Per questo ho bisogno di un’applicazione che mi permetta di ottenere risultati soddisfacenti facilmente e in poco tempo, e mi eviti di dover impazzire per aggiungere le icone nell’applicazione(di 9 dimensioni diverse, mannaggia a loro!).

Visto che sarete ormai stufi di leggere, vado di mini guida per far vedere l’applicazione all’opera!

Opacity all’opera, “artista” scadente

Tutto inizia dalla schermata iniziale, in cui ci viene gentilmente chiesto cosa vogliamo fare.

Inizio

Aprendo l’inspector si possono impostare le sempre utili(!) informazioni relative al copyright & co.

Image pref

Una cosa particolarmente utile e comoda di questa app sono i numerosi filtri che si possono usare, praticamente tutti i filtri di Quartz installati sul sistema.
Ci sono poi gli onnipresenti filtri per avere un effetto ueb duepuntozero in un click.
A seguire immagine per vedere un po’ la schermata di lavoro.

uork

Per vedere come procede il proprio lavoro si può avere un’anteprima dell’icona, su schermata di iOS, su AppStore o anche altrove.

Anteprima

Ed ecco infine la cosa tanto utile di questa applicazione, le factories. Cosa sono? Le factories permettono di esportare il proprio lavoro in tutte le n-mila dimensioni necessarie in un click.

factories

Bon, se per necessità più o meno serie vi trovate a dover disegnare icone non posso fare altro che consigliarvi di provare questa fantastica applicazione, i 90$ li vale tutti!

PS: Si, mi piace il viola, no, non mi vergogno a dirlo, è un colore fashion!!!

Perché multi-piattaforma non è bello

In questo periodo con il successo di Android e delle QT si sta rivalutando se vale effettivamente la pena sviluppare con framework legati a una sola piattaforma, la risposta è si!

Bene, ora che sai la risposta puoi smettere di leggere…

Scherzo, non andare via!

Per comodità guardiamo in dettaglio la situazione prima per device mobili, poi per i computer nel senso tradizionale.

Device Mobili

Questo è il campo in cui per primi ci si è chiesto se è realmente a vantaggio dell’utente avere
applicazioni che girano solamente su un dispositivo, alcuni sostengono di si, io ovviamente dico di
no.

iOS e Android sono due sistemi molto differenti, anche i telefoni su cui funzionano sono
differenti(iPhone ha un solo tasto fisico, Nexus One per esempio ne ha diversi), quindi ci
si aspetta che le applicazioni funzionino in maniera leggermente diversa.

Per esempio il pulsante di ricerca del N1 rende inutile un eventuale tasto “Cerca” nella nostra
applicazione, ma se deve anche girare su un altro dispositivo è un bel problema! Per risolverlo bisogna scendere a compromessi, o eliminare una funzione o avere due pulsanti per fare la stessa cosa, e su uno schermo da 3.5” non è il massimo.

E questo è uno solo dei problemi che si possono incontrare, basti pensare anche alla diversità
dell’hardware su cui gira il droide, ogni volta dovremmo valutare se vale la pena o no di
supportare una certa feature a discapito dei modelli più vecchi, o economici.

Un bel dilemma se non si vogliono fare scontenti i propri utenti.

Si potrebbe anche discutere quale dei due SDK sia migliore, a questo proposito rimando al post di
Jeff Lamarche che è sicuramente più preparato di me.

Se non hai voglia di leggere(male!) te lo dico io, sono praticamente uguali.

Computer

Qui il discorso si fa più interessante, mentre i cellulari sono più piattaforme per la fruizione di
contenuti, i computer sono usati quotidianamente per creare.

E quando creiamo qualcosa di solito vogliamo passarlo a qualche amico/collega, o no? Ma cosa
facciamo se il nostro amico non ha lo stesso programma con cui abbiamo creato il documento?

In nostro aiuto ci vengono i formati aperti, la cui specifica è aperta a tutti e dovrebbe essere
facile da implementare in tutti i programmi.

Quindi sono a favore di un programma che gira su più piattaforme e che produce uno stesso tipo di
documento? Ovviamente no!

I formati aperti sono lì apposta per quello, cribbio! Io scrivo un documento con Pages, lo salvo
in odf, lo passo al mio amico fan di Office(ne esistono poi?), lo modifica e lo
passa al collega che usa OpenOffice, tutti vivono felici e nessuno si lamenta della bruttezza di
OpenOffice su mac (ehm…).

Un altro argomento a sfavore del software multi-piattaforma è l’aderenza alle Human Interface
Guidelines
, se la nostra applicazione segue alla lettera le AHIG
probabilmente non seguirà né le GNOME HIG
quelle di KDE.

Notare come la guida scritta da Apple sia piena di belle immagini!

La mia “visione”

Bene, allora come penso si debba evolvere il software nel futuro, visto che tutti dicono che dovrà
diventare multi-piattaforma, mentre è chiaro chi io sono contrario?

La soluzione per me ottimale è quella di scrivere programmi che abbiano in comune una libreria
condivisa e GUI specifica per ogni OS, esattamente come succede per Pidgin e Adium.

Ringrazio Bl@ster per avermi dato l’idea per questo post, e per avermi convinto a iniziare questo blog.

[[self alloc] initWithName:@”Frakko”]

Questo blog è scritto da me, Frakko(ok, per fortuna non mi chiamo realmente così), per parlare dello sviluppo per iOS e OS X.

In questo modo spero di spiegare il punto di vista dei developer(o almeno il mio) per la piattaforma della Mela che vengono sempre bistrattati nel panorama italiano.

I commenti verranno moderati selvaggiamente, in modo da favorire la discussione costruttiva e ridurre i flame.

Rispondere a un post con un post sul proprio blog è incoraggiato 🙂

Si, è la copia della pagina di about, ma si sa sono pigro