Technology Experience

Autore: Igor Damiani

.NET World

Un team come pochi

Nell’autunno del 2014 ho tenuto un corso che avrebbe impattato non poco nel mio lavoro nei mesi a venire. Solo che al momento non lo sapevo. Quella mattina arrivano tre figure: Davide, Sabrina ed Ivano. Ufficialmente avevano bisogno di un corso di architettura del software, implementata attraverso .NET Framework con C# attraverso un’applicazione desktop WPF. Il loro obiettivo, una volta terminato il corso, era buttare via una vecchia applicazione C++ scritta negli anni ’90, che ormai stava diventando davvero antiquata ed ingestibile, per riscriverla con tecnologie più moderne ed al passo con i tempi.

Il corso è durato soltanto qualche giorno, al termine del quale è stata richiesta la mia collaborazione al progetto. Beh, alla fine abbiamo lavorato assieme per circa quattro anni. Io per la maggior parte del tempo lavoravo da casa, in autonomia; una volta al mese andavo in trasferta per un paio di giorni in sede, dal cliente, che è praticamente ad un tiro di schioppo dall’aeroporto di Malpensa. Quello che è saltato fuori alla fine di tutto è una bella applicazione Windows Presentation Foundation, con Model-View-ViewModel fatto come dio comanda, repository, separation of concerns, dependency injection, Entity Framework, unit-testing, etc. etc. Non voglio scendere nei dettagli, ma devo dire che è stata una bella sfida. Abbiamo inserito spunti di reflection e di Roslyn per la compilazione dinamica. Abbiamo utilizzato pesantemente i controlli Infragistics, in qualche caso ristilizzando molti componenti WPF per adattarli alla user experience voluta dal cliente. E’ stato bello ed intenso, a tratti un po’ complicato per la difficoltà di coordinamento tra gli sviluppi da fare e le altre mie attività a cui venivo assegnato.

Eccoci qua. Da sinistra verso destra: Davide M. – Sabrina P. – Ivano R.

Di loro tre ricordo con piacere il clima divertente e costruttivo con il quale si lavorava, tutti i pranzi nella mensa aziendale, le serate al pub, la serata in pizzeria per festeggiare il mio compleanno. Ricordo una serata particolare con Davide passata da un pub all’altro, quando poi mi riaccompagnò in hotel alle ore 2:00: ed il giorno dopo eravamo tutti e due belli pimpanti davanti al nostro codice C#. Ricordo il supporto logistico di Davide quando squarciai la gomma della mia Honda Civic in una delle mie mattine in trasferta, andando a sbattere come un perfetto idiota contro un marciapiede di Cardano al Campo (Varese).

Adesso, avendo io cambiato azienda e ruolo, li ho abbandonati. Il prossimo software che dovranno scrivere (ho partecipato ad una prima analisi ed alla stesura di un prototipo funzionante) lo dovranno fare da soli, ma so per certo che sarà migliore del primo che abbiamo scritto assieme.

Ciao Davide! Ciao Sabrina! Ciao Ivano! In bocca al lupo!

Send to Kindle
My daily work

Ogni era ha il suo reborn

Il mio primo blog su quello pubblicato su UGIdotNET, all’indirizzo http://blogs.ugidotnet.org/idamiani. Era gestito da .TEXT, se non ricordo male, e si chiamava Technology Experience. Poi, nell’aprile del 2007, mi staccai da UGIdotNET e diedi vita al mio blog indipendente, pubblicato attraverso il mio dominio vivendobyte.net, e lo rinominai come Technology Experience (reborn). Questo è il blog che continuate a leggere anche oggi. Nei mesi e negli anni a venire ho aprofittato dei miei piccoli e grandi cambiamenti  lavorativi per incrementare il lato reborn.

Non ricordo esattamente l’evento scatenante che mi portò ad inserire reborn 2 nel titolo. E non ricordo neppure reborn 3 e reborn 4. Gli ultimi anni sono stati troppo frenetici, probabilmente.

Oggi il mio blog diventa reborn 5.

Questo incremento è dovuto al cambiamento lavorativo di cui vi ho raccontato nel mio ultimo post. Nuovo stile, grafica leggermente rifatta, nuovo tema (che a quanto pare è anche responsive, per cui su dispositivi mobile non dovreste più avere gli stessi problemi di prima).

Beh, buona lettura!

Send to Kindle
My daily work

Ciao Brain-Sys, e grazie per questo viaggio

Ebbene sì, lunedì prossimo, il 1° ottobre 2018, comincerò a lavorare per una nuova azienda, lasciando Brain-Sys che mi ha accompagnato negli ultimi otto anni della mia vita personale e professionale. E’ stato un lunghissimo e meraviglioso viaggio, cominciato nel lontano gennaio del 2010, quando ero un tipo molto molto diverso. Sapete qual è la cosa che mi lascia più amareggiato? Oggi sono qui a scrivere il finale di questa storia, ma all’epoca non riuscii a scriverne l’inizio, semplicemente per il fatto che in quel periodo il mio blog era offline causa malfunzionamenti dell’hosting provider a cui affidavo le mie memorie in quel periodo. Me ne sono ricordato qualche settimana fa, quando ho cercato sui motori di ricerca qualche traccia dell’Igor Damiani dell’epoca: l’unico articolo interessante che ho trovato è questo, scritto solo nell’aprile del 2010. Un po’ troppo poco, l’inizio di questa avventura meritava qualcosa di più.
Quindi…scriviamolo adesso.

L’inizio di tutto: estate 2009
Beh, dunque, per me che l’ho vissuto in prima persona, non è difficile ricordare quei tempi, e soprattutto le decisioni che mi hanno portato, alla fine, ad entrare nella famiglia di Brain-Sys. Alla fine del 2009 mi trovavo in uno stato lavorativamente parlando piuttosto depresso. Avevo ancora la mia partita iva, ero il classico consulente che veniva sbalzato da un’azienda all’altra, a fare brevi consulenze di qualche settimana o di qualche mese di qua e di là. Un po’ C#, un po’ VBA, un po’ SQL Server ed un po’ di Oracle, ero in balìa degli eventi. Sentivo di non avere il controllo sulle mie giornate, sul mio tempo e sull’andazzo delle cose. Sentivo, insomma, di non avere più in mano il pallino della mia vita, nè il coltello dalla parte del manico. Forse la goccia che ha fatto traboccare il tutto è caduta nei mesi di giugno/luglio di quell’anno, quando l’azienda per la quale lavoravo mi aveva collocato da un cliente nell’hinterland milanese, in mezzo al niente, a portare a termine un lavoro per il quale non avevo alcuna aspirazione e che mi faceva soffrire fisicamente. Tanto stress, tanti dolori cervicali, tanti viaggi e tante code in macchina, soddisfazione praticamente azzerata. Per come la vedo io, un vero incubo. Di quell’estate ricordo altre due cose: la morte di Michael Jackson e la frequentazione con una donna più grande di me che mi faceva ammattire. Due vicende tristi, no? Quando ad inizio agosto andai in ferie, nella mia amata Puglia, ero decisissimo a mollare tutto, a mollare il mondo dello sviluppo software ed a ricominciare daccapo con altro. Provate a leggere i punti 8, 12, 15 di questo elenco pubblicato nell’OT del Venerdì (5).

Beh, insomma, cosa è accaduto, alla fine? Qui sinceramente i ricordi sono un po’ sfocati e confusi. Al rientro dalle ferie ho incontrato riluttante Gabriele Gaggi ed Alessandra Maggi ad un giapponese a Pavia, abbiamo chiaccherato un po’ e – per farla breve – ho cominciato a lavorare per Brain-Sys, prima come consulente fino a fine 2009, e poi come dipendente dal gennaio 2010. Avevo una mia vita, in qualche modo bisogna pur tirare avanti. All’inizio ero molto molto titubante, soprattutto per l’assunzione. Amavo l’indipendenza che la mia partita iva mi concedeva. La mia preoccupazione più grande era il fatto che non volevo assolutamente rimettermi a fare tutti i giorni la tratta Lodi-Milano & ritorno. La promessa dell’epoca, pienamente mantenuta, era il fatto che con Brain-Sys avrei potuto lavorare da casa praticamente tutti i giorni, tranne una trasferta al mese da un grosso cliente che seguivamo all’epoca.
Come dicevo un attimo fa: promessa mantenuta al 100%.

Il durante: dal 2010 al 2018
E’ difficile riassumere otto anni di storia in una manciata di righe. So solo che è stato un viaggio lungo ed entusiasmante. Ho incontrato tante nuove persone, abbiamo scritto qualche software interessante. Applicazioni desktop, applicazioni mobile, ho messo persino le mani su progetti web. Sono migliorato sotto tantissimi punti di vista, sia personali che professionali. Un aspetto importante, probabilmente, è stata la collaborazione con Overnet Education, che mi ha portato in giro per l’Italia a parlare delle tecnologie che conosco ed amo di più: .NET Framework, C#, Visual Basic .NET, WPF, WCF, Windows Phone, UWP, Entity Framework, e molto altro ancora. Ho tenuto corsi più teorici ed altri più pratici, con un paio di partecipanti oppure con intere classi di quasi 20 persone. Ho tenuto corsi di pochi giorni fino a gestire intere academy di diverse settimane. Mai e poi mai avrei pensato di parlare in pubblico in vita mia. Avrò sempre un posticino nel cuore per tutti quei ragazzi neolaureati provenienti da tutta Italia che – come dicevo io scherzando – ho formattato, nel senso che ho tentato di infondere loro tutte le mie conoscenze sul mondo della programmazione ad oggetti. Qualcuno di loro l’ho incontrato poi nei mesi successivi, in metropolitana o in giro per Milano. Qualcuno lavora in questo meraviglioso mondo dell’IT, qualcuno ha cambiato, altri sono tornati a casa loro e fanno tutt’altro. Con i corsi ho visitato tantissimi posti. In ordine sparso: Barcellona in Spagna, Cuneo, Pesaro, Torino, Brescia, la Valtellina, Verona, Trieste, Padova, Bergamo, Bologna, Roma, Bari, Modena, Rimini, Venezia, Imola, Trento, Genova, me ne starò dimenticando qualcuna e senza contare le tantissime altre cittadine e paesi di provincia, senza contare Milano ed il suo sterminato hinterland. Ho visitato San Polo d’Enza, il paese dove il 27 febbraio 1797 ha sventolato il primo tricolore italiano, nato il 7 gennaio a Reggio Emilia. Ho visitato grosse multinazionali italiane, ed ho incontrato tantissimi giovani e meno giovani sviluppatori di software. Spesso i più in gamba li ho trovati nelle piccole software-house, dove ti devi fare in quattro per risolvere i problemi e consegnare un prodotto al cliente. Comunque sia, tenere corsi e spiegare ciò che so è una delle cose che amo di più.

Grazie a Brain-Sys per la fiducia nei miei confronti nell’home-working, esperienza incredibilmente appagante che tutti dovrebbero provare, ma non prima di aver lavorato seriamente in modo tradizionale in un ufficio. Devi essere autonomo, conoscere bene il tuo lavoro, conoscere le tecnologie, essere capace di prendersi cura del cliente. Altrimenti è solo tempo perso.

Grazie a Brain-Sys per avermi permesso di partecipare alle giornate community e non, dal Basta Italia del 2010 a Roma (rimasi bloccato nella capitale un giorno in più per via del vulcano islandese che bloccò i voli di tutta Europa), agli eventi qua e là, comprese un paio di edizioni a WPC, durante le quali ho fatto anche lo speaker. Grazie per il corso sul public speaking a Bergamo, per tutti i venerdì di ferie presi per raggiungere Lecce, per la gestione agile di ferie, permessi e giornate dedicate alla donazione AVIS.

Qualche aneddoto
Il più posto più strano in cui l’ho fatto. Ho scritto righe di codice a Barcellona, presso un cantiere in costruzione, con il notebook appoggiato tra enormi bombole di gas piene fino all’orlo.

Il primo corso. Su Visual Basic .NET, nell’autunno del 2013, ad un ragazzo presso l’NH Hotel ad Assago (dove si tiene WPC, per capirci). Lo ricordo perfettamente, perchè si sarebbe sposato da lì a qualche settimana, avrebbe fatto il viaggio di nozze in Giappone ed ha fatto di tutto per convincere anche me a fare altrettanto. Non ce la farà mai.

Il complimento più bello. “Igor, ci hai fatto uscire da Matrix”. Corso su WPF tenuto a Bologna questa estate. Beh, non è merito mio. Il merito è vedere cosa permette di fare lo XAML combinato con .NET Standard e MVVM. Non perdete tempo a cercare di farmi cambiare idea, non ce la fate. Tanti di voi ormai sbroccano e parlano solo di bot & cloud. Lasciate stare, che è meglio.

La figuraccia. Ricordo due episodi spiacevoli. Un corso a Verona sull’architettura sviluppata con .NET, quando tutti i partecipanti erano sviluppatori in Java. Me la sono cavata, alla fine l’architettura è l’architettura, ma me la sono vista così così. L’altro episodio è avvenuto a Cesano Boscone, e non posso raccontarlo; diciamo che un tizio ha messo in dubbio la mia preparazione sull’argomento, e diciamo che aveva ragione al 50%.

Il posto più brutto in cui ho dormito. Un B&B a Bari, a 50 metri dallo stadio San Nicola. Mai più.

L’ultimo corso. Lo sto tenendo oggi. A Carpi, su C#, in un’azienda amica che ho già visitato in passato. Partecipanti: 4.

Il corso più noioso. Su Xamarin Forms, a Trento.

Il corso più divertente. Su Xamarin Forms, a Bari.

Software di chat utilizzati. GTalk, Skype, Messenger, Facebook Messenger, Skype for Business, Teams. Altri?

La fine: estate 2018
Brain-Sys è stata capace di prendere un Igor sconsolato, stressato e depresso, e l’ha rivitalizzato. Ecco che cos’è Brain-Sys. Dal mio punto di vista è una piccola famiglia che è stata capace di adattarsi, di resistere e di non soccombere miseramente durante gli anni più severi della crisi economica. Un grazie mille a tutti è ovviamente scontato. Non voglio fare nomi per non dimenticare nessuno. Grazie per tutti questi anni, grazie alle mie colleghe ed ai miei colleghi, grazie a chi mi ha accolto in casa sua come fossi un caro amico, grazie per le chiaccherate e per gli sfoghi. Come tutte le famiglie, ci sono aspetti positivi e meno positivi, ma che non toglie nulla a tutto ciò che di buono abbiamo fatto, costruito e realizzato. Grazie davvero.

Non è mia intenzione discutere qua dei motivi che mi hanno portato alla decisione di lasciare Brain-Sys. Tre forse sono state le cause scatenanti: il mio trasferimento, l’arrivo di Federica nella mia quotidianità e, dulcis in fundo, la stanchezza dell’essere troppo spesso in giro per l’Italia. Posso affermare che la cosa più bella che mi sia capitata in Brain-Sys, ovvero tenere corsi, è anche quella che alla fine ha fatto pendere l’ago della bilancia verso il “No, così non puoi andare avanti”. E’ stata una decisione presa con un mix di cuore & raziocinio e con voglia di vedere al futuro. Tutto è avvenuto in modo estremamente rapido durante il mese di luglio ed agosto, proprio a ridosso delle ferie estive. E così è stato. Alè.
Ciao Brain-Sys. Sei stata un’ottima nave.
E’ l’inizio di una nuova avventura.

Epilogo
Sapete, quando vivete accanto o all’interno di una grande città come Milano, avete quasi una visione distorta della realtà. Milano è Milano, e con il resto dell’Italia per certi versi non c’entra proprio nulla. E’ come un’isola separata, con le sue regole frenetiche e la sua evoluzione. Quindi in metropolitana o per strada, per esempio, potreste vedere ragazzini e ragazzine di “soli” 10 anni vestiti alla moda, con lo smartphone in mano, immersi nel loro mondo virtuale. Li vedrete magari atteggiarsi da adulti, imitando o vestendosi come il loro cantante pop o rap preferito. Li sentirete parlarsi nel loro slang, a tratti moderno, violento o volgare. Non ho idea se sia davvero così, ma a me danno proprio l’impressione di avere poco senso della realtà che li circonda. Magari sto invecchiando io.
Viaggiare per la nostra penisola – soprattutto il nord ma non solo – mi ha fatto capire che la vera Italia, quella sana e genuina, è lontana dalle grande metropoli. Visitando la provincia italiana ho visto ragazzi di 15 anni girare con la bicicletta sgommando e ridendo; ho sentito giovani ragazzi parlare con la loro nonna lamentandosi delle loro coetanee perchè “sono vestite tutte uguali con quel cavoli di shorts di jeans”. Ho visto ragazzi vestiti così come capitava, e ragazze della porta accanto, con gli smartphone messi da parte. Insomma, la parte più autentica si trova lì, ben nascosta e protetta tra le nostre colline, montagne, laghi e pianure, lontano dal fragore delle grandi città impazzite. Quei ragazzi e quelle ragazze mi hanno dato speranza.
Sono giunto alla conclusione che i Goonies non sono estinti, ma esistono anche oggi, anche nel 2018. Basta saperli trovare, un po’ come l’A-Team.

Send to Kindle
.NET World

Corso C# avanzato in quel di Venezia? Terminato!

Un sentito grazie a Matteo, Marcomattia, Ivano, Paolo ed Enrico (rigorosamente da sinistra a destra nella foto qui sotto), per avermi pazientemente ascoltato per quattro giorni durante il mio corso su C# avanzato, da lunedì 27 a giovedì 30 di questa settimana. Di cosa abbiamo parlato? Di generics, eventi, delegate, LINQ, async & await, di un pezzetto di mondo di TPL, Reflection, e di molto altro ancora che qui non posso menzionare.

E’ molto molto bello avere avuto l’ennesima conferma del fatto che ci sono sviluppatori davvero tosti, in tutte le parti d’Italia; questa volta li ho incontrati nella provincia veneta. E’ stato un corso nel quale anche io ho imparato qualcosa, perché come è facile intuire quando si tiene un corso a gente tosta, anche quest’ultima è parte attiva e dà il suo contributo. Grazie ad Enrico (l’ultimo sulla destra nella foto) ho conosciuto per esempio Service Stack e CSLA, che vorrei approfondire – se il tempo me lo permetterà – in futuro.

Beh, insomma, ci siamo scattati una fotografia tutti assieme come ricordo, che mi fa piacere pubblicare qua sul mio blog, più che altro perché è uno degli ultimi corsi che tengo. Ma questa è un’altra storia di cui vi parlerò a breve su queste stesse pagine.

P.S. : un “congratulazioni” ad Ivano P. che, nella serata di ieri, ha sostenuto e superato l’esame di certificazione su C#. Avanti così!!!!

Send to Kindle
.NET World

Visual Studio 15.8 alla ricerca della parentesi graffa (chiusa) mancante

Se dopo l’installazione della versione 15.8 di Visual Studio 2017 avete problemi ad inserire nel codice la parentesi graffa chiusa (“}”), effettivamente c’è un bug, del quale fortunatamente esiste già un workaround. Seguite questi passaggi:

  • Aprite Visual Studio 2017
  • Andate nel menù Tools –> Options
  • Andate nella sezione Envinronment –> Keyboard
  • Nella casella di ricerca indicata da “Show commands containing” digitate “Edit.ExpandSelectiontoContainingBlock”
  • Vedrete che c’è la combinazione di tasti Ctrl+Shift+Alt+=
  • Cliccate sul pulsante Remove e confermate su OK per chiudere la finestra di dialogo

Et voilà, il problema è risolto. Ovviamente ci si attende che Microsoft risolva questa piccola svista con i prossimi rilasci.

Un ringraziamento a questi due tweet di Matteo Pagani e di Alessio Iafrate, che mi hanno permesso di trovare la soluzione.

Send to Kindle
.NET World

Il silenzio sui social

Ci sono regole non scritte grazie alle quali il mondo si regge. Sono le regole del buonsenso. Ma affinchè queste regole continuino a funzionare, è necessario che esse vengano costantemente rispettate e seguite da tutti. E’ sufficiente che una sola persona evada da questa visione per far saltare gli schemi. Immaginate un autista contromano, oppure qualcuno che continua a suonare all’impazzata i citofoni della palazzina dove vivete, volumi delle radio e delle TV al massimo livello, uno che salta la fila alle poste, e così via. Sarebbe l’anarchia, no?

Una di queste regole è quella che riguarda il silenzio sui social. E’ di pochi giorni fa il dramma che ha colpito la città di Genova, con il crollo del ponte Morandi, che ha purtroppo causato la morte di decine di persone, con feriti, sfollati, eccetera eccetera. Sui social ovviamente si è scatenata la bagarre, a torto o a ragione. Discussioni infinite sulle cause, su chi doveva intervenire, sui selfie dei vari personaggi politici che hanno partecipato ai funerali di stato, sugli allarmi inascoltati lanciati negli anni precedenti, sui fischi a quelli del PD & sugli applausi a quelli dell’attuale maggioranza. E, si sa, come sempre sui social ogni cosa è amplificata ed esasperata.

Ho visto anche qualche amico invocare un po’ di silenzio, nel segno del rispetto verso chi ha perso la vita e verso i loro familiari. Io personalmente sono anche d’accordo, ma come dicevo all’inizio, è necessario che questo silenzio sia rispettato da tutti, altrimenti il meccanismo non sta in piedi, ma proprio per niente. Non trovo corretto aprire il proprio profilo Facebook e vedere un elenco infinito di post e condivisioni che rappresentano solo una parte dell’opinione pubblica, a maggior ragione che non rappresenta il mio. Secondo me, stiamo vivendo un’epoca nella quale ciascuna deve fare la sua parte, esprimendo la propria idea ed opinione. Per dirla diversamente: immaginatevi di aprire Facebook e di trovare un elenco spropositato di sciocchezze e fake news (alcune oggettive, altre meno). Come reagireste? Non vi verrebbe voglia di gridare la vostra verità? Credo proprio di sì. Anche perchè il risultato di un eventuale vostro non agire, sarebbe ancora più disastroso: tutte le notizie che circolano sui social sarebbero di parte, non vi rappresentano. Dal mio punto di vista è come leggere continuamente che 1+1 fa 3. No, c’è qualcosa che non va.

Tra l’altro, ritengo che il silenzio sui social per certi versi non debba esistere. D’altronde, nei bar e nei luoghi pubblici le persone hanno sempre parlato tra di loro, anche di fronte a fatti di cronaca, per cui perchè questo non deve avvenire anche sui social? Semmai la cosa difficile è parlarsi e confrontarsi con educazione, garbo e rispetto l’uno dell’altro. Purtroppo i social ad oggi banalizzano molto il dialogo (per la serie: se non sei con me, allora sei contro di me), e lo rendono aspro, duro e violento. Chissà, magari un giorno questo atteggiamento svanirà, ma è molto più probabile che i social così come li conosciamo oggi spariranno, soppiantati da altre forme di comunicazione digitali.

Send to Kindle
Community

19 Giugno, Genova Mobile Development

Il prossimo 19 Giugno (martedì), presso il Dipartimento di Informatica dell’Università di Genova, (ecco la mappa su Google Maps) si svolgerà un interessantissimo pomeriggio dedicato allo sviluppo su piattaforme mobile, dalle 14:00 fino alle 18 circa. Trovate maggiori informazioni sulla pagina dedicata all’evento. Gli argomenti previsti vanno dalle Progressive Web Apps, passando da Xamarin a Xamarin Forms, fino allo sviluppo nativo con Android Studio. Gli speaker sono di tutto rispetto (Raffaele Rialdi non ha bisogno di presentazioni, immagino…senza nulla togliere agli altri, ovviamente), quindi vale la pena ritagliarsi un po’ di tempo per stare al passo con le ultime evoluzioni in questo settore. Alcuni amici di community tratteranno anche argomenti più trasversali, come ad esempio sfruttare il cloud di Azure ed i Cognitive Services nell’ambito delle nostre applicazioni mobile, per avere il giusto apporto di intelligenza artificiale. La giornata è divisa in due track (main room & secondary room), per cui è possibile saltare da una stanza all’altra per seguire l’argomento più congeniale rispetto alle proprie necessità.

Il tutto è fortunatamente gratuito (non è così scontato, organizzare un evento ha sempre dei costi, di cui spesso non si ha consapevolezza); è sufficiente registrarsi per poter partecipare.

Send to Kindle
My daily work

Sole alto

Ho tenuto il mio primo corso nell’ottobre del 2014, stiamo arrivando con il prossimo autunno ai quattro anni. Ho girato bene o male un po’ tutta l’Italia, ma per motivi logistici – come potete immaginare – soprattutto il Nord. Sono stato a Cuneo, in Valtellina, a Torino (dove tornerò fra poco), ovviamente a Milano e nel suo intricato hinterland, in Trentino, a Trieste, in parecchi posti dell’Emilia Romagna (da Piacenza a Cesenatico), a Pesaro, fino a raggiungere in casi più rari location come Roma e Bari. Ho parlato, e continuo a farlo, di .NET Framework, di C# e VB.NET base ed avanzato, di metodologie agili, di TFS, di Xamarin Forms, di MVVM applicato a WPF & UWP, di Entity Framework, e chi ne ha più ne metta.

Ma è specialmente d’estate, quando le giornate sono lunghe, che hai più soddisfazione nel chiudere la tua attività. Perchè sei stato in piedi tutto il giorno, hai parlato alla tua classe, alle persone di un’azienda, hai trasmesso tutto ciò che sai.

L’ultimo giorno saluti tutti, esci all’aperto inforcando i tuoi sgangherati occhiali da sole, con il sole ancora alto in cielo, cammini soddisfatto verso la tua automobile, quando sei con lei, e torni con calma a casa. Un altro corso è andato, e pensi già al prossimo.

Insegnare è una vocazione, si dice spesso.
Credo che sia anche la mia.

Send to Kindle
My daily work

Parlare di WPF in Microsoft House

Il 24 Maggio scorso ci sono stati i Community Days 2018 presso Microsoft House, a Milano. Inizialmente mi ero iscritto, mesi fa, perchè indipendentemente dai contenuti (che possono essere di tuo gradimento oppure no), queste sono sempre occasioni da non perdere. Peccato accorgersi che proprio quel giorno avrei dovuto tenere il mio quarto ed ultimo giorno di corso su Windows Presentation Foundation + .NET Standard + MVVM in Overnet Education, per cui avrei dovuto arrendermi e saltare l’evento.

Non è andata proprio così, alla fine (per fortuna).

Lunedì 21, parlando con i quattro partecipanti, si era ventilata un’idea bizzarra ma divertente, ovvero quella di svolgere l’ultima giornata proprio in Microsoft House. Nessuno aveva mai proposto una cosa simile, a quanto pare. L’idea nasce inizialmente nel mio cervello, poi la espongo e racconto agli amici (tecnici) di Overnet, che tutto sommato non la trovano così sgradevole, anzi… La palla passa poi ai commerciali, che mi appoggiano, a patto ovviamente di riuscire a trovare e prenotare una saletta in Microsoft House per il 24 Maggio, durante i Community Days. Scrivo di getto una mail all’amico Andrea Benedetti, di Microsoft Italia, che senza troppe domande prenota la Design Suite al primo piano della nuova spettacolare sede.

Quindi, il gioco è fatto.
Eccoci qua!

Ecco una foto dei quattro partecipanti del corso. Da sinistra verso destra sono: Michele, io, Marco, Alessandro ed Alberto. Michele ed Alessandro appartengono ad una società, mentre Marco e Alberto ad un’altra.

E’ stata una giornata incredibile. Sole estivo, sede in gran spolvero, accoglienza magnifica, saletta spaziosa e bellissima, clima divertente, WPF spremuto fino (quasi) all’ultima riga di XAML. A metà mattina abbiamo fatto una breve pausa, e sul nostro piano ci siamo anche beccati un meeting con HoloLens. Non farò nomi perchè sarebbero troppi, ma mando un saluto a tutti quelli che ci hanno intravisto nella nostra sala per il corso.

Ovviamente c’è da ringraziare un po’ tutti: il personale di Overnet Education che ha reso possibile questa iniziativa, Microsoft nella persona di Andrea Benedetti per la disponibilità e la tempestività con la quale è intervenuto ed agito.

Non ho potuto seguire le sessioni, ovviamente, ma è stato comunque bello incrociare gli amici di community di sempre, quelli che abitano lontani e quelli che abitano vicino, chi in Italia e chi all’estero.

Chissà, magari è un’esperienza che si potrà ripetere anche in futuro. Speriamo.

Send to Kindle
.NET World

L’importanza dei tempi morti

Partiamo da un semplice presupposto: noi umani non siamo macchine pensate per produrre solo ed esclusivamente profitto, e non siamo stati progettati per avere una availability lavorativa del 99,99%. Per vivere bene, a lungo ed in salute abbiamo bisogno dei nostri tempi morti, che vengono scioccamente chiamati così ma che invece non lo sono affatto, almeno per quanto mi riguarda. La notte, durante il sonno, noi non facciamo nulla di cosciente, ma il nostro cervello lavora comunque ed ha bisogno di farlo, e si occupa di attività che non potrebbe svolgere durante il giorno. Il sogno è una fra queste, ad esempio. E, credetemi, sognare serve.

Per questa ragione, mi preoccupa un po’ sentire parlare amici e colleghi di come diminuire i tempi morti nelle proprie giornate, allo scopo di ritagliare tempo per il lavoro. Oggi si sta cavalcando moltissimo l’idea della macchina che guida da sola, e tantissimi (giustamente?) non vedono l’ora che diventi realtà. “Sai quanto tempo potremmo guadagnare ogni giorno?”, “Sai quanto tempo passo in coda per andare al lavoro?”. Certo, ovviamente, ovvio che in queste circostanze l’auto a guida autonoma potrebbe tornare utile. Ma mi dà terribilmente fastidio vedere come ci siano persone disposte a tutto pur di guadagnare tempo. Fidatevi: il tempo non basta mai, se riempiamo troppo le nostre giornate. Sarebbe una continua rincorsa. Non per niente a volte si afferma di aver bisogno di giornate da 48 ore. In futuro qualcuno potrebbe proporre di non dormire così tanto, o che mangiare come facciamo oggi è del tutto inutile (potremmo ingoiare una pillola in 15 secondi con tutte le sostanze che abbiamo bisogno), etc. etc. Passare del tempo bloccati in auto è ovvio che è una perdita di tempo, ma sarebbe una perdita di tempo anche un serata in pessima compagnia o un pranzo indigesto; la soluzione ad un pranzo indigesto non è evitare di mangiare, ma è mangiare meglio. La soluzione ad un viaggio in auto andato storto non è evitare di guidare facendolo fare ad una macchina o ad un software, ma è guidare in condizioni migliori (partire in un altro momento). Dobbiamo distinguere tra attività noiose e monotone, per le quali i software sono portati, ed attività che ad oggi sembrano perlopiù dei contrattempi ma che possiamo migliorare.

I “tempi morti” dal mio punto di vista sono importanti. Quante volte vi è capitato di avere un’idea mentre facevate tutt’altro? Magari proprio alla guida o mentre siete in bagno a farvi la barba? I “tempi morti” sono intervalli di tempo durante i quali non fate razionalmente una determinata attività, ma il vostro cervello – fidatevi – sta lavorando eccome. E dietro le quinte sta proprio lavorando a quel problema di AngularJS o WPF che vi affligge. Penso che per vivere e lavorare bene una persona debba assolutamente godere di tempi morti, passati davanti ad un videogioco, alla lettura di un libro, alla guida di un’auto durante una gita fuori porta, in coda alla cassa, in attesa alle Poste o all’ospedale. Come dicevo all’inizio, non siamo individui pensati per produrre e basta, ma dobbiamo soprattutto vivere. Ed i tempi morti sono parte della vita. Personalmente, per lavorare bene ed in modo efficace ho bisogno dei miei tempi di svago, e non riesco a switchare da un’attività all’altra a costo zero, come fa in modo continuo un PC. Prima di passare da un corso all’altro, per esempio, ho bisogno di tempo per fare altro, per staccare la spina un attimo, perchè non è per nulla semplice gestire classi di X persone parlando di tecnologia e di sviluppo del software.

Ritengo che il consumismo sfrenato ci stia un po’ facendo perdere parecchio di vista la bussola della nostra vita. Siccome abbiamo sempre più da fare, sempre più da leggere e da scrivere e da criticare, sempre più da correre e sempre più in fretta, siamo costantemente alla ricerca di blocchi di secondi e minuti da ritagliare qua e là. No, così non va. O perlomeno non è il modo in cui mi piace vivere.

Send to Kindle