Welcome back

Non scrivo sul blog dal 29 marzo 2016. Da ben 6 anni, un tempo infinito. Inizialmente pensavo di abbandonarlo del tutto, poi mi son detto che non avrebbe avuto senso: come su un diario privato, possono esserci periodi più o meno lunghi in cui non si scrive, per poi riprendere in maniera inaspettata ma non meno intensa. E vale la pena ricominciare a scrivere, perché è un modo per mettere a fuoco i propri pensieri; farlo su un blog, potenzialmente letto da chiunque, costringe ad essere ordinati e l’ordine aiuta a fare chiarezza.

Dunque, welcome back a me stesso nel mio blog.

Cosa è successo in questi sei anni? Una marea di cose, più o meno importanti, più o meno grandi. Tutte, direi, offuscate dal macigno della pandemia e dalla prospettiva attuale di una guerra europea. Due eventi che avrei ritenuto assolutamente impossibili. È evidente che non c’è nulla di impossibile, specie quando c’è da peggiorare.

In un certo senso, ho anche cambiato tipo di lavoro: sono sempre nella stessa azienda, che nel frattempo è cresciuta tanto, trasformando alcune dinamiche. Al punto che è difficile dire “non ho cambiato lavoro”: il lavoro è cambiato, sono cambiato io, tante cose sono nuove, tante sfide sono nuove. Continuità e novità coesistono.

Più di sei anni fa, però, mi manca la mia terra e i miei affetti (familiari e non) che ho lasciato là. Se la vita vorrà concedermi di invecchiare come i miei nonni, non credo che vorrò farlo a Roma: tornerò sull’Isola da cui sono partito 16 anni fa e mi godrò gli acciacchi tra la polvere del mio paese. Sperando di non dover riattraversare il mare per farmi curare qui.

Per ora, avanti tutta: c’è tantissimo da fare e il tempo è poco.

Raduno Nazionale del Retrocomputer Club Italia

I prossimi 2-3 Aprile 2016 si terrà a Roma il Primo Raduno Nazionale del Retrocomputer Club Italia, un evento dedicato agli appassionati di retrocomputing e archeologia informatica. Il raduno si svolgerà presso i locali del Liceo Scientifico “G. Keplero” in Via Delle Vigne 156 (sabato dalle 14:00 alle 19:00, domenica dalle 10:00 alle 14:00) e vedrà pezzi rari e preziosi portati da collezionisti di tutta Italia. Sulla pagina ufficiale dell’evento è possibile vedere in anteprima la lista delle macchine che saranno esposte: ce n’è per tutti i gusti!

primo_raduno

Io parteciperò con una NeXT NeXTStation N1100 (monocromatica), del cui restauro parlo nel blog BaCKStepBlog. Benché si tratti di una macchina nata a cavallo tra gli Anni ’80 e gli Anni’90, rappresenta un pezzo fondamentale della storia del calcolo: in primo luogo, “il web” in quanto progetto sperimentale è nato proprio su una macchina NeXT (in realtà un NeXTCube); in secondo luogo, l’API e i tool di sviluppo di NeXTStep (il sistema operativo delle macchine NeXT) sono stati i fondamenti di Mac OS X e di iOS.

next_test

Android Programmazione Avanzata (seconda edizione)

Ho realizzato solo nei giorni scorsi che, preso dal solito turbine infinito di cose da fare, avevo totalmente scordato di pubblicare sul mio blog la notizia della pubblicazione della seconda edizione del libro “Android Programmazione Avanzata”. Per la precisione, il libro è stato pubblicato a giugno dello scorso anno e porta con sé tante novità.

libro_2nd

Prima di tutto sono cambiati gli autori: il grandissimo Emanuele Di Saverio ha lasciato il testimone a una compagnia più numerosa, composta da Fabio Collini, Matteo Bonifazi (già autore di Android in Sette giorni) e Alessandro Martellucci. In realtà, Fabio Collini ha curato circa il 50% degli argomenti, mentre io, Matteo e Alessandro abbiamo curato il resto. È cambiata anche la casa editrice: FAG ha ceduto la pubblicazione a LSWR.

È stato un lavoro molto faticoso ma entusiasmante. La fatica ha una doppia origine: prima di tutto, scrivere un libro di programmazione avanzata che distilli l’esperienza reale degli autori richiede tanto tempo, tanta sperimentazione e soprattutto costringe a scartare tutti quei temi di cui sono pieni il web e altri libri. In secondo luogo, man mano che gli anni avanzano, gli impegni di ciascuno (tra lavoro e famiglia) lasciano sempre meno tempo a disposizione della scrittura e purtroppo non tutte le sere si ha l’energia o l’ispirazione per fare un lavoro di qualità. Se la fatica non passa facilmente, lavorare con persone in gamba come Fabio, Matteo e Alessandro ha reso l’impresa raggiungibile. Sarebbe stato impossibile, anche con tutto il tempo del mondo a disposizione, raggiungere la qualità che ciascuno di loro ha portato al libro. Non diversamente dal 2012 con Emanuele, anche se dopo tre anni Android è ancora più grande, i temi sempre più numerosi e, appunto, tempo ed energie sempre di meno.

Io ho curato il capitolo su Bluetooth, che in questa nuova edizione si arricchisce di tutta la nuova specifica Bluetooth Low Energy.

Ecco la ghiotta lista di argomenti:

  • Activity e task in background (tema sempre caldissimo!!!)
  • Programmazione funzionale
  • Grafica e interfaccia utente
  • Supporto multidevice
  • Bluetooth
  • Android Wear
  • Chromecast e Google Cast
  • Qualità del codice
  • Sicurezza (appendice)

Spariscono notifiche push, NFC e networking, che ormai non sono più argomenti avanzati. Chissà quali spariranno nella terza edizione e quali saranno quelli nuovi. Direi che se ne parlerà tra qualche anno! 😀

Come sempre, il libro è disponibile in tutte le librerie fisiche e virtuali, ad esempio su Amazon e IBS.

Introduzione alla tecnologia iBeacon

Con grande orgoglio e con l’emozione di sempre, anche quest’anno sono stato invitato a parlare al Codemotion che si è svolto all’Università Roma3. Ho parlato della tecnologia iBeacon e della localizzazione indoor e a corto raggio.

codemotion2015_badge

Il tema ha attirato un pubblico numeroso e spero sia stato di interesse per tutti i partecipanti.

codemotion2015_me

Iniziato timidamente molti anni fa, il Codemotion si conferma l’evento italiano più importante per sviluppatori, hacker, maker, innovatori, aziende e appassionati. Averlo trasformato da evento gratuito ad evento a pagamento non ha ridotto l’affollamento ma solo sfrondato i partecipanti casuali e annoiati, che portano casino e si addormentano durante i talk.

È un evento notevole, bellissimo, che credo abbia ancora ampissimi spazi di miglioramento: questo è assolutamente positivo, perché significa che gli anni avvenire porteranno novità e nuovi stimoli. Qualche nota: sarebbe molto utile che TUTTI i talk venissero registrati, per creare un mega archivio di tutto quanto prodotto dagli speaker; dovrebbe essere possibile (in qualche modo) segnalare la necessità di replicare un talk (magari perché due molto interessanti sono in sovrapposizione); i talk dovrebbero durare un po’ di più (40 minuti sono pochi).

Per me è stata anche una occasione per rivedere tanti amici che non vedevo da tempo (uno per tutti: Edoardo Schepis, che forse non vedevo da 10 anni! Ma anche Ugo, Giorgio, Guido, Daniela…): è stato molto bello constatare che, malgrado i capelli bianchi, qualche chilo in più, le chiacchierate più a parlare dei bambini che dei viaggi, siamo sempre gli stessi, sempre “hungry & foolish” anche prima dell’esortazione di Steve Jobs.

Ancora, durante il Codemotion si è creata una incredibile coincidenza: io e il mio Amico storico Massimo Farina (che si occupa di Diritto dell’Informatica) ci siamo trovati nella stessa aula, uno di seguito all’altro, a presentare un seminario. Insomma, dopo anni passati sui banchi di scuola e anni di avventure, la vita continua a farci incontrare e lavorare assieme.

codemotion_panel

Infine, vorrei ancora una volta ringraziare Mara Marzocchi (e Marco Casario, e Chiara, e Massimo, e Viviana, e Gosia, e…. tutti) perché ha avuto l’intuizione del Codemotion e la tenacia per realizzarla.

Sviluppare applicazioni per Android in 7 giorni

Una delle domande che mi viene posta più di frequente è quale sia il modo migliore di approcciare lo sviluppo su Android.

Solitamente la risposta è semplice: “prendi i tutorial ufficiali e uno smartphone con cui giocare, lascia perdere le bibbie e gli emulatori”. Ritengo, infatti, che i tutorial ufficiali siano ben fatti e che toccare con mano il risultato del proprio lavoro sia gratificante e sfidante allo stesso tempo.

Mi rendo conto, però, che oggi Android è davvero tropo grande per partire da là (nel 2008, quando ho iniziato a giocarci, era decisamente molto più piccolo… seppur enorme rispetto a JME!). Anche i tutorial cominciano ad essere tanti e spesso diventa difficile orientarsi. Fermo restando il consiglio sull’uso di uno smartphone fisico, credo che un ottimo aiuto per avvicinarsi alla programmazione Android sia il libro recentemente pubblicato da Matteo Bonifazi per l’editore LSWR. “Sviluppare applicazioni per Android in 7 giorni” è un libro onesto: in poco meno di 200 pagine e senza la pretesa di candidarsi a onniscenza di Android, questo volume insegna le basi per tradurre le idee in app funzionanti e pubblicabili. Un passo per volta, un tema al giorno, appunto, per una settimana, dal setup dell’ambiente di sviluppo alla pubblicazione sul Play Store. Compresi tracciamenti e pubblicità. Senza paroloni, senza trucchi (tipo traduzioni 1:1 di altri testi, ndr). Un libro onesto, appunto, scritto da chi il codice lo scrive tutti i giorni. Il titolo non deve tranne in inganno: non è una guida imprecisa o all’acqua di rose, ma è evidente che l’autore ha faticato non poco per essere conciso (e già Pascal dice che essere brevi è molto più faticoso che essere prolissi: “Questa lettera è più lunga delle altre perché non ho avuto agio di farla più breve.”). Ovviamente il lettore deve conoscere i concetti base della programmazione in linguaggio Java e deve possedere i fondamenti della programmazione ad oggetti.

App-Android-7-giorni

C’è tutto? No, assolutamente no. C’è quello che occorre per iniziare? Sì, assolutamente sì. Matteo ha sapientemente tolto dettagli inutili, lasciando quelli che servono a comprendere con rigore i meccanismi base del sistema. Insomma, il libro vale quel che costa e il tempo che si passa a leggerlo. Per molti aspetti, ha un approccio da maker, con la coscienza che puntare ad oltre un miliardo di device richiede comunque metodo.

Il libro è disponibile in formato cartaceo e ebook su Amazon e altri bookstore.

C’è anche un sito ufficiale a supporto: https://androidinsettegiorni.wordpress.com/

Contropelo

Parcheggio a spina, tutti ben ordinati. Tranne la BMW, che va leggermente contropelo, occupando due posti. Bastava un po’ di educazione e rispetto delle regole.

contropelo