03 Mar 2020

Non ricordo se avevo otto o nove anni, arrivò a scuola in uno zaino di qualche compagno, trafugato al fratello più grande, un numero di “Giochi per il mio Computer” che recava trucchi, soluzioni, ma soprattutto una stordente scena prima di copertina dedicata a Final Fantasy VII e a quello che di lì a poco sarebbe diventato uno degli idoli della mia infanzia, il glaciale Cloud Strife. Final Fantasy VII era appena uscito, ed era tutto un parlarne; anche quando a poca distanza la Square (la casa produttrice) per flettere i muscoli e far vedere di che pasta era fatta mise sul mercato Final Fantasy VIII – il successivo capitolo della saga con una grafica rinnovatissima – Final Fantasy VII faceva comunque ancora parlare di sé, e lo avrebbe fatto per decenni.
Mentre Final Fantasy VIII era per forza di cose più chiacchierato dalle persone della mia generazione per via soprattutto del fatto che era il primo Final Fantasy completamente in italiano, un po’ di bambini (inesperti) e ragazzi (decisamente più facilitati dall’età) avevano deciso di superare la barriera linguistica di un gioco così complesso completamente in inglese scoprendo un potenziale infinito, un sistema di combattimento clamoroso ma soprattutto una trama da far accapponare la pelle. Giocato e rigiocato, solo anni dopo mi sarebbe venuto il pallino di finirlo guardando qualche soluzione online (perché nel frattempo Internet aveva fatto il suo ingresso nelle nostre vite): il più grande ricordo che ho di Final Fantasy VII ad oggi è il gioco nel quale per anni e anni sono stato bloccato (tra gli enigmi e l’inglese era veramente tosta farsi strada), eppure nemmeno per un minuto ho ceduto alla frustrazione di stare fermo e non proseguire nella storia. È l’unico gioco che mi abbia mai cullato anche nel momento in cui non riuscivo ad andare avanti. E quando poi ho capito come girare intorno ai miei ostacoli, ho potuto finalmente finire quello che durante l’infinito margine temporale speso a combattere, livellare, evocare, correre e sostanzialmente mandare storto il piano del malvagio Sephirot, era diventato il mio gioco preferito di sempre.
Non li ho giocati tutti, perché per me Final Fantasy VII sarebbe stato un fenomeno irripetibile: mi è piaciuto molto Final Fantasy VIII, ho amato Final Fantasy IX, ma non è mai stata la stessa cosa. Nel 2016 ho deciso di giocare Final Fantasy XV dopo un sacco che non ne giocavo uno (non ho giocato nemmeno il X, che tra i miei coetanei andò fortissimo), principalmente perché dopo un po’ di casino a fronte delle ultime uscite Square Enix aveva deciso di rinnovare completamente il sistema di combattimento della sua saga più blasonata: non rimasi deluso. Mi ha regalato ore indimenticabili, e tantissime sorprese a fronte di una trama davvero curata anche se con un protagonista un po’ deboluccio ma perfettamente innestato all’interno di un panorama generazionale dove gli stereotipi erano ormai cambiati e l’eroe “simil-macho” del passato non poteva funzionare più in alcun modo.
Oggi ho pianto. Quando ho iniziato a giocare la mia demo di Final Fantasy VII Remake ho detto ad Agnese che mi osservava sconvolta che non mi aspettavo di vivere abbastanza per vedere questo giorno. E lo credevo davvero: dopo dieci anni di trailer a mozzichi e bocconi, non credevo che veramente Square prima o poi avrebbe fatto uscire il nuovo Final Fantasy VII. La mia non è l’opinione di un esperto, e non pretendo che la prendiate come un distillato di sapienza; è il parere di un appassionato, e va visto sotto quella lente. Sappiatelo :-)
Action o RPG? Un po’ tutti e due, dai
La meccanica action mista RPG che aveva quel tocco di hack ‘n slash per alcuni è stata una mazzata quando c’è stato da approcciarsi a Final Fantasy XV; in questo caso è stata rivista ancora una volta, e ovviamente migliorata. La cura particolare che personalmente ho notato all’interno di questa demo è relativa al fatto che ogni personaggio ha le sue abilità e le sue peculiarità, addirittura Barret può sparare a cannoni di guardia a cui Cloud non può arrivare. Il game design è spaziale, e anche se solo con due personaggi (per il momento) si intuisce molto bene il potenziale gameplay con un party “completamente carico”. Nel bel mezzo della battaglia ogni personaggio può essere istruito tramite un menù durante la navigazione del quale il tempo arriva quasi a congelarsi, e che ci dà tutto quello che ci dava il precedente sistema di combattimento: Abilità, Oggetti, Magie, altro; ma non appena abbiamo fatto la nostra selezione tattica, veniamo catapultati nel bel mezzo dello scontro action dove lo spadone di Cloud la fa da padrone in maniera superfrenetica.
In sostanza, già nel capitolo “precedente” aveva dei nei e li ha mostrati tutti, ma questo sistema di combattimento personalmente mi ha impressionato e mi ha fatto godere della trama del primo capitolo, l’attentato al reattore Mako, esattamente nel modo in cui doveva: gli scontri sono ben posizionati e la frenesia tra uno scontro e l’altro tiene il ritmo della narrazione al cardiopalma, fino a farci scontrare col bossazzo, il Vigilante Scorpio che già vent’anni e spicci fa ci aveva fatto saltare sulla sedia. Solo che stavolta non ci sono i quadratoni, non ci sono i triangoloni, è tutto superbamente animato in 4K con una grafica che RAGAZZI.

Tutto è bagnato da una luce nuova
Una cosa su tutte mi sconvolge: nel mio totale candore di bambino, complice la grafica “retro” (che per il tempo era ‘na bomba! Ma purtroppo oggi come oggi fa veramente ridere) non avevo nemmeno capito che Jessie fosse una ragazza, e ovviamente altrettanto complice la barriera linguistica non avevo mai colto tutti i minidialoghi in cui lei ci prova spudoratamente con Cloud. La sequenza iniziale appare sotto tutta un’altra luce con questa nuova eccellente grafica, e per la prima volta non sono così pigro da pensare “che palle, me la dovrò pure rigiocare”.
Ho letteralmente pianto quando ho sentito il peso del pad in mano e ho visto il livello di dettaglio del treno che porta i nostri ecoterroristi dentro la centrale Shinra. Penso che siano state utilizzate le massime risorse disponibili nel nostro tempo esattamente come allora, per giungere al massimo risultato ottenibile esattamente come allora; e non c’è una parte di me che pensa che non sia valsa la pena di attendere e che i soldi della Square siano stati spesi male.
La sensazione è quella di un gioco nuovo, che si discosta dall’originale quanto basta per strizzare l’occhio a qualche cambiamento, ma che per il resto rimane fedele come il capo della servitù di una magione che si era lasciata da tempo e alla quale si ritorna: un leale passatempo che ti prende la mano e ti dice “sono sempre io, adesso ti faccio piangere un po’ di nostalgia” – e però la nostalgia non c’è perché in quel momento sei contemporaneamente l’adulto sul divano di casa sua e il bambino sul divano di casa dei suoi. E tutti e due, insieme, accompagnate Cloud nell’abisso del reattore Mako.
Sono più di tre mesi che non scrivo niente sul blog, le ragioni sono molteplici. Volevo tornare con qualcosa che sentissi davvero mio. Final Fantasy VII Remake è stata la migliore occasione per ricominciare a gettarmi su questo taccuino digitale.
31 Dec 2019
Sapete quale è la cosa più bella che ci si possa aspettare da un anno secondo me? Il fatto di essere presi in contropiede dal fatto che arrivi il successivo. Il fatto di essere così intenti a masticare la propria vita boccone dopo boccone che non ci si accorga di quanto tempo è passato. Quest’anno per me ne è stato un esempio veramente folgorante, tanto che all’inizio non sapevo cosa scrivere, adesso spero di copiare qualcosa da Agnese che ha scritto prima di me e meglio tutto quello che abbiamo attraversato in questo 2019, e in definitiva l’unica cosa che mi è rimasta da fare è abbandonarmi di getto alle parole che arrivano, come ho sempre fatto (con buona pace dei miei editor passati presenti e futuri). Forse, ora che ci penso, ha senso dissezionare questo anno così pieno di cose in ambiti ed eventi fondamentali, perché da dire ho tanto e potrei perdermi in questo mare di roba. Ho scelto alcuni momenti da mettere in evidenza, e di altri non scriverò. Riguardo alcuni perché non meritano attenzione in fondo, riguardo altri perché dedicare loro una sezione di questo post sarebbe far loro un torto dato che sarebbe troppo poco. Il matrimonio di Simone e Mita è uno di quei momenti. Il pulled pork di Federico lo segue a ruota.

Quello che è sicuro, senza dubbio, è che questo 2019 mi ha ricordato quanto non abbia importanza l’evento in sé, la differenza la fanno le persone che danno vita a quel ricordo. Ed è appunto per questo che in tutti questi highlight non sono tanto le situazioni che porto nel cuore, quanto le persone.
New York e gli Stati Uniti, di nuovo
Ve lo ricordate? Quasi esattamente un anno prima, i vostri eroi hanno visitato la Grande Mela e un bel po’ di altri posti correlati. Quest’anno è accaduto di nuovo: New York è stata per la prima volta nella storia della mia vita una vacanza fatta nello stesso posto dell’anno prima, un po’ come gli anni ‘80 a Riccione, solo con un volo transoceanico di mezzo e in un clima assolutamente misto tra autunno e inverno. Non ho molto da dire, perché quello che mi ricordo più vivamente del viaggio è la sensazione di calore circonfuso che ha permeato la maggior parte del mio tempo sul suolo statunitense, grazie al quale ho migliorato ancora di più le mie abilità di conversazione in inglese e con il quale ho maturato una bellissima lista di cose fatte, una meglio dell’altra:
- Joker in lingua originale, senza sottotitoli, capendo ogni battuta, e venendo serviti da una simpatica cameriera in un cinema particolare che ti permetteva di ordinare gli hamburger al tavolino proprio davanti il sedile;
- Trick or Treat proprio in mezzo alle strade di New York, vestito da Harry Potter, con accanto la mia Luna Lovegood;
- La cena di Halloween dai Tutino-Parker;
- Harvard con Ludovico;
- L’MIT con Ludovico;
- In definitiva un po’ tutta Boston con Agnese e Ludovico;
- Il Friendly Toast;
- Salem con la mia strega bionda preferita che si fermava a ogni vetrina accompagnata dal sottoscritto;
- Una Philly Cheese Steak piena di jalapeño, devastante per le mie mucose e per il mio stomaco, in una stanza di Philadelphia estratta direttamente da un piccolo manicomio di provincia;
- Un business meeting in uno Starbucks a Time Square in autunno a New York. Come mi ha ricordato il mio amico Marco, così ho fatto il pieno di battute e luoghi comuni.

Insomma, un viaggio così assurdo e stupendo da farci guardare in faccia, me e la mia compagna di viaggio, e farci sorridere come non mai.
Dungeons & Dragons, e altre cosette di nerd e mostri
Quest’anno ho cominciato a fare sul serio con Dungeons & Dragons e coi giochi di ruolo in generale: l’ho sempre reputata una passione a cui non mi dedicavo mai abbastanza, e invece ho preso un ritmo che mi piace: da un po’ di tempo faccio parte di svariati gruppi su Facebook su D&D (tra cui D&D 5e Italia, a cui vi consiglio l’iscrizione, pieno di belle persone tra cui il professor Beccaria, che io considero il mio Master storico responsabile del mio primo personaggio), ascolto podcast su Dungeons & Dragons, leggo manuali, libri, mappe, carte, e chi più ne ha più ne metta su Dungeons & Dragons. La mia lettura più lunga in questi trecentosessantaquattro giorni è il Ciclo di Death Gate, del quale sono arrivato quasi alla fine. Giusto in tempo per la fine dell’anno ho masterizzato una prima sessione con i miei colleghi, e non me la sono cavata poi tanto male, anche se posso migliorare parecchio, il che rende questa parte anche un elemento della mia lista di buoni propositi inesistente.
Aspetto di comprare una libreria per metterci su una collezione completa di manuali di Dungeons & Dragons, e nel frattempo mi accingo a passare questa notte di Capodanno con un dungeon di mio cognato, degno prosieguo ed ennesimo capitolo di una campagna iniziata nel Ferragosto del 2018. Agnese ancora non credo che l’abbia capito bene, ma passare un capodanno del genere simboleggia per me un grossissimo traguardo, sia come giocatore di ruolo (capodanno D&D, ne vogliamo parlare?) sia come partner (perché sono riuscito a passarle una passione così grande). E un ancor più grande traguardo per me è quello di avere dei cognati che parimenti si sono prestati e hanno cominciato a giocare con noi un anno e mezzo fa le avventure di una compagnia male in arnese che va in giro a curiosare ancora oggi.
Alcune bizzarre avventure col software
È stato un 2019 denso e intenso, per il software così come per il resto della mia vita: ho consolidato la mia conoscenza di Elixir, sono riuscito a far partire un webserver in Haskell senza tagliarmi una mano, ho aiutato a mettere su un gruppetto di studio per rispondere all’annosa domanda: “cosa cazzo è una monade? Ma soprattutto un funtore applicativo sta bene con la cipolla caramellata?” – Insomma, grandi novità quest’anno. Per l’anno prossimo ho già in mente qualcosa di più, ma se lo svelassi farei troppi spoiler, per cui me lo tengo per me e aspetto il momento in cui si realizzerà. Per rinforzare le mie competenze di frontend ho imparato Elm, e ho imparato soprattutto ReasonML, che finora è la cosa che più ho adorato in grado di girare in qualche modo dentro un browser.
Ma soprattutto ho imparato cosa mi rende forte, cosa mi rende debole, come ottenere il massimo dal mio operato senza finirci tirato sotto. E queste non sono cose che si imparano come un linguaggio di programmazione, perché non esiste un libro di testo che te le insegni.
Anche qui abbiamo una lista di punti che mi hanno reso una persona migliore:
- Ho imparato che lavorare con gli amici si può, ma è meglio mettere in chiaro tutto e subito;
- Ho fatto un po’ di incantesimi con il team di HAL;
- Ho preso parte allo sviluppo di un micro-framework per fare un sacco di cose con Elixir, a cui do meno amore di quanto vorrei;
- A sorpresa sono stato coinvolto in un progetto fichissimo (ovviamente con tanto codice in Elixir) proprio mentre ero negli Stati Uniti;
Senior Software Developer
Una riga per questo fatto? Una riga per questo fatto. Nonostante io facessi il lavoro che faccio da un tempo congruo, nessuno mi aveva mai riconosciuto a livello professionale il titolo di Senior. Può sembrare una cosa stupida, ma per me quest’anno è stato davvero importante attraversare il processo di valutazione che la mia azienda mette a disposizione dei dipendenti, e nonostante io non sia un grande fan di questo particolare processo, ne sono uscito con questo titolo in mano. È una bella sensazione, e spero di affrontare sfide belle e commisurate in questo 2020 che arriva.

Agnese
Odio questo modo di dire: “ultima ma non per importanza” viene lei, la bionda che mi sopporta e mi supporta tutti i giorni da quelli che a noi sembrano a volte duemila anni, a volte due settimane. Si prende tutti i miei scazzi e i miei discomfort, come io mi prendo i suoi, ma mi sa che i miei sono di più: Agnese a volte è veramente la mia ancora di salvezza che mi aiuta a vedere le cose secondo una prospettiva diversa, e non solo secondo il mio personalissimo, a volte distruttivo modo di guardare attraverso la lente della vita. A lei faccio un brindisi. Il resto dei cin-cin li lascio al suo bicchiere, perché beve più di me. A Agnese va un grazie immenso, per darmi la motivazione, a volte anche bruscamente, per spingermi sempre un passo più in là e dimostrare a me stesso che non sono solo una polpetta, ma sono una persona, e una persona fica.

Epilogo
A ben pensarci, una lista di buoni propositi ce l’avevo. Comprendeva il saper preservare le cose care a livello personale, e ancora più programmazione funzionale a livello tecnico e professionale. Di una cosa però sono certo, e questo di liste ne vale cento e più: la consapevolezza che ho è quella di aver gettato le basi, in questo 2019, per un fantastico 2020. Spero davvero che quello dell’anno venturo sia un ottimo raccolto, e non c’è modo migliore di augurarlo a tutti voi che mi leggete e mi supportate da un sacco di tempo, se non dal nostro tavolo da gioco.
04 Nov 2019

Quante riflessioni si possono ancora fare sul tema blogging quando nel frattempo la Rete va a farsi friggere, nessuno è più padrone di niente, mastodonti dai nomi altisonanti si appropriano di contenuti che noi decidiamo di dargli per alimentare algoritmi che fanno solo la nostra infelicità e frustrazione? Diciamo infinite, e diciamo pure che io sono una persona semplice: Andrea fa un post su quanto è necessario prima ancora che fico e facile avere un blog alla fine di questo pazzo 2019, io banalmente lo riprendo e lo commento.
Tuttavia, nel mentre si aspetta una “riforma” delle piattaforme CMS, i creatori di contenuto devono e possono darsi una mossa. È tremendamente facile aprirne uno e non ci sono scusanti.
Addirittura “ai bei tempi” pensavamo che chiunque avrebbe aperto un blog. Per un periodo è stato così, grazie a Splinder e IoBloggo, o altre piattaforme simili; poi sono arrivati i “walls”, è arrivato Facebook, è arrivato Twitter, e tanti saluti a chi non solo non aveva voglia di mantenere uno strumento così complicato, ma non aveva nemmeno contenuti così “ad effetto wow” da condividere.
Così per tutto quello che nessuno vorrebbe leggere su un blog, per i nostri “garbage post” ci siamo rifugiati su piattaforme che non accentuassero la memoria delle nostre corbellerie, gettandoci a nuoto in un fiume in piena che porta via qualsiasi cosa consentendocene la visione solo poche volte, creando discussioni brevi e non approfondite. Forse il genere umano in maggioranza ha paura dell’approfondimento? Su Facebook è raro vedere un bel thread dove due persone evolvono la loro opinione in un dibattito normale. È raro persino vederlo nella vita normale. Ma in più di qualche occasione mi è capitato di leggere dei blog post e dei commenti a questi post veramente da cornice istantanea.
Qualche ragione stringata per cui un blog è una sfida con sé stessi:
- Il boxetto di Twitter o di Facebook crea meno ansia da prestazione e non ti dà quell’impressione da blocco dello scrittore che avrebbe l’utente medio di internet;
- Per via del punto di cui sopra, poco sforzo: zero customizzazione, scrivi “fart”, prendi qualche like, ti parte il picco di adrenalina masturbatoria da reaction su social network, e la giornata l’hai portata a casa;
- Le persone non hanno tempo di sedersi davanti al computer, darsi una calmata e fare/scrivere qualcosa di strutturato;
- A ben pensarci, forse le persone non ne hanno neanche voglia;
- Uscire dal gioco significa dire no a quello che non ti piace ma anche a quello che ti piace: quante persone smetterebbero di volere il like degli amichetti sotto il post del giorno?
- il successo di Instagram (e TikTok?) dimostra che la civiltà contemporanea che abita l’Internet propende per immagini, spesso senza un senso associato e senza una caption strutturata, perché scrivere è troppo sforzo e leggere lo è altrettanto.
Eppure dal mio punto di vista avere un blog (o molti blog – se si scrive tanto e di svariati argomenti) è fichissimo, anche se per esempio nemmeno io riesco a scriverci quanto vorrei.
- Hai spazio per contenuti strutturati;
- Sei costretto a rileggerti se hai scritto una cacata;
- Puoi eventualmente scrivere cose brevi e nessuno ti sparerà per questo;
- Ti guardi allo specchio: mentre scrivi vieni profondamente a contatto con quello che pensi di un determinato argomento, e lo discuti prima di tutto con te stesso;
- Come Alan Jacobs consiglio l’elderblog sutra di Venkatesh Rao. Sono riflessioni interessanti, io stesso non ho avuto ancora il tempo di leggerle e metabolizzarle tutte.
Alan ha ragione:
So one of the things I want to be thinking about is: How can I encourage readers of my blog to seek some of the benefits that I get from it?
13 Oct 2019
Oggi ho letto questa frase interessante su un post di Marco:
fare carriera in ambito manageriale da un lato fa schifo, dall’altro offre un sacco di opportunità di fare la differenza. Un po’ come crescere.
Mi ha fatto riflettere parecchio, principalmente perché arriva in un momento della mia vita professionale in cui sono estremamente indeciso sul percorso da affrontare di qui a poco. In maniera speciale riguardo il dilemma se continuare su una traccia puramente tecnica, o puntare a qualche ruolo di people management.
Grazie Marco.
13 Oct 2019
Gergely Orosz, qualche giorno fa (e se non seguite il suo blog ve lo consiglio caldamente):
[…] “bad code” is a lazy expression. It’s not specific and means different things to everyone.
Suggerisce quindi alcuni consigli quando si arriva a criticare del codice in maniera sana suggerendo un refactoring o direttamente in fase di scrittura. Come sempre l’interazione coi compagni di team risulta cruciale:
- Be specific
- Give a specific suggestion
- Talk about the future implications of the code you see, if not changed
- Ask the person writing the code, what they think about your comments
Sono tutti consigli giusti, e sono tutti principi che metto in pratica costantemente e che impattano sulla qualità finale del codice. Mi sento di aggiungerne uno mio in coda: se qualcosa ti sembra generalmente debole, i tuoi commenti non vengono apprezzati, o banalmente non c’è tempo e le cose stanno funzionando in questo stato di precarità, copri quella funzione infame con una suite di test. Questo permette di metricare “quanto” effettivamente un pezzo di codice è prono a rompersi, attraverso test stressanti (quindi copertura dell’happy path e due/tre altri casi più “tricky”) che rendano più sicura l’evoluzione della codebase tangente quella funzione, quel metodo, quell’oggetto che stiamo prendendo in esame.
A quel punto non c’è niente da fare: una test suite scritta bene parla per te, e funge da dimostrazione euristica che le tue preoccupazioni sono infondate, oppure che c’è qualcosa che va aggiustato immantinente.
A quel punto se il test infame continua a rompersi, beh: non è un problema tuo no? Anzi: in fase di riscrittura o in generale di miglioramento, avrai le spalle coperte dal te stesso del passato.