ImageSlideShow uno Slideshow Controller in Swift per iOS

Ho deciso di iniziare a condividere parte del mio codice su Github per migliorare le mie skills su Swift e per aprirmi ad un mondo nuovo, quello dell’OpenSource.

Ho quindi fatto l’upload del progetto di ImageSlideShow, un ViewController che fa da Slideshow per le immagini.

Il suo funzionamento è molto basilare ma è applicabile in pratica a qualsiasi applicazione.
Trovate tutte le informazioni su Github.

Di lavoro ce né ancora molto ma sono comunque soddisfatto. Spero che apprezziate e che iniziate ad utilizzarlo.

Happy coding!

Icon Recolor – App per ricolorare le icone su macOS

icon

IconRecolor è un’applicazione per macOS che fa una cosa: Ricolora le icone PNG in un click.

Il suo funzionamento è semplicissimo, basta fare drag & drop dei file da ricolorare, scegliere il colore e salvare le nuove icone.

Ho realizzato quest’app pensando a tutti gli sviluppatori e i grafici che hanno bisogno di modificare velocemente le icone durante lo sviluppo.
Quante volte accade che le specifiche vengono cambiate al volo, o c’è bisogno di fare un test veloce sull’abbinamento dei colori? IconRecolor permette di colorare le icone in modo davvero veloce e semplice diminuendo drasticamente i tempi di lavoro.

Potete scaricare la versione 1.0 direttamente Mac App Store.

 

Implementare Facebook login in un’app iOS e PHP

Qualche mese fa parlavo con dei miei colleghi riguardo alla migliore tecnica per implementare il classico Login Facebook all’interno di un servizio tramite l’app iOS in modo sicuro.

La difficoltà più grande che abbiamo avuto è stata quella di capire quale migliore tecnica ci permettesse di sfruttare l’SSO in modo intelligente. In particolar modo c’erano due punti chiave:

  1. L’utente non deve rendersi conto di niente e ritrovarsi loggato/registrato
  2. Il servizio (quindi il CMS che gestisce l’anagrafica utenti) deve registrare un  utente valido

Poi qualche giorno fa mi sono ritrovato a dover implementare OAuth e SSO su segnala.net e mi sono dovuto rimboccare le maniche per implementare quanto avevo descritto.

La situazione era questa: CMS Apache, PHP, MySQL e applicazione iOS (Swift).
Il CMS gestisce l’anagrafica e quindi se un utente deve accedere, prima deve loggarsi o registrarsi.

Nel CMS ho installato un server OAuth così da poter avere accesso alle API solo tramite autenticazione OAuth, poi ho iniziato a scrivere il codice che si occupa di gestire l’SSO.

La logica è descritta nell’immagine:

Logica SSO-OAuth per implementare il Facebook login

*[SSO Data] sono i dati richiesti per la verifica dell’accesso. Ad esempio con Facebook ho utilizzato il Token e lo User ID.

I passaggi logici sono questi:

  • L’app richiede a Facebook, tramite l’SDK, l’accesso. Facebook quindi mi passa il suo Token e lo user ID.
  • L’app quindi richiede tramite API al mio CMS l’accesso tramite questi due dati.
  • Il CMS accede quindi a Facebook tramite Graph e controlla che il token sia valido e che corrisponda allo user ID passato
  • Se tutto va a buon fine va a pescare l’indirizzo email dell’utente e qualche altra informazione necessaria ad una eventuale registrazione
  • Una volta presi i dati necessari va a controllare se esiste un utente registrato con l’email trovata
  • Se esiste crea un token di accesso e lo passa all’app
  • Se non esiste crea un nuovo utente con i dati Facebook, crea un token di accesso e lo passa all’app

Questa logica è applicabile ad ogni tipo di SSO Provider e mi è sembrata molto sicura sia dalla parte dell’app che da quella del server.

Se avete domande o suggerimenti commentate pure!

Costituzione Italiana 3.0

Era molto tempo che non aggiornavo Costituzione Italiana. Ho voluto approfittare del cambio di linguaggio di programmazione (Swift) da parte di Apple per realizzare un’applicazione totalmente nuova.

Costituzione Italiana 3.0 quindi si aggiorna completamente. Ho riscritto ogni cosa, compreso il testo della Costituzione.
Adesso il motore è più snello e semplice da aggiornare, questo significa che in futuro potrete avere migliorie in modo più veloce.

Purtroppo abbiamo perso la compatibilità con la vecchia versione, ciò significa che i favoriti e le note non sono più compatibili.

Spero apprezziate il mio lavoro. Correte ad aggiornarla!

Apple Pencil

Oggi Apple ha rilasciato molti prodotti. Nessuno si aspettava un evento così consistente.

Uno dei prodotti che ha presentato è il nuovo iPad Pro e connesso ad esso ha presentato una nuova penna per disegnare, un Pencil chiamato per l’appunto Apple Pencil.

Subito si sono scatenate le ironiche parole di improvvisati esperti di marketing e improvvisati esperti di tecnologia. Simpatici, ma sappiamo tutti che il loro scopo è far parlare di sé. Il rovescio della medaglia è che queste persone parlano ignorantemente e quindi rischiano una pessima figura.

Quindi, queste persone affermano: “Steve Jobs disse che chi usava lo Stylus era uno sfigato e chi usava l’iPhone no ed adesso che hanno fatto il Pencil si danno la zappa sui piedi”

Intanto bisogna essere precisi. Ecco Steve Jobs, nel 2007, 8 anni fa:

Steve, pace all’anima sua, parlava del pennino che al tempo si utilizzava con gli smartphones dell’epoca.stylus
Lo schermo aveva una tecnologia che non permetteva l’uso delle dita in modo semplice (schermi resistivi) e quindi veniva usato un pezzo di ferro con un po’ di plastica. Una pennina, uno Stylus.

Era scomodo, lo si perdeva di continuo e si usava veramente male.

Quando venne presentato iPhone aveva una nuova tecnologia di schermi detti “capacitivi” che permettevano l’uso delle dita. Una rivoluzione, per moltissime cose, una delle quali finalmente l’abbandono di quel fastidiosissimo Stylus.

Oggi Apple presenta Apple Pencil. Una penna molto precisa in grado di poter per disegnare su uno schermo capacitivo come con una matita o un pennarello.

La notate la differenza vero?