Una delle parti essenziali del nostro processo di apprendimento continuo è quella di partecipare di tanto in tanto a conferenze sul software. La scelta è piuttosto scarsa in questa parte del mondo, quindi siamo stati molto contenti di sentire parlare di CraftConf 2014 Budapest.
In realtà, si trattava di un tweet sorprendente, ritwittato molte volte, prima che finalmente lo vedessimo. Tuttavia, aprire il link allegato è stata una grande sorpresa.
Mentre sfogliavamo l'elenco dei relatori, una strana sensazione ha iniziato a farsi strada. La metà degli scrittori famosi della mini-biblioteca che abbiamo al lavoro sarebbe stata presente: Gerard Meszaros, Dan North, Eric Evens, Nat Pryce e Michael Feathers, solo per citarne alcuni.
Così il team di sviluppo di Syneto ha deciso di andarci. Purtroppo non abbiamo potuto partecipare tutti, ma almeno quattro moschettieri erano presenti.
Con l'avvicinarsi della data della CraftConf sono apparse sempre più notizie. Il panel era brillante e gli interventi erano promettenti. Pochi giorni prima dell'evento ci è stato annunciato che in tutta la città, cioè a Budapest, si sarebbero tenuti dei meetup a cui tutti erano invitati a partecipare gratuitamente. Ogni meetup era orientato a uno specifico argomento tecnologico ed è così che mi sono ritrovata al discorso di Bruce Eckel su "Reinventare il business".
Mentre mi godevo il suo discorso, mi ha colpito l'imprevedibilità del futuro. Ho iniziato a leggere il libro di Clayton Christensen "Il dilemma dell'innovatore un paio di mesi fa e ha ridefinito la mia visione delle aziende, della loro evoluzione e dei loro cicli di vita. Mi ha anche offerto una conoscenza sufficiente per porre a Bruce Eckel alcune domande davvero interessanti sul business e per chiacchierare con lui per qualche minuto dopo l'incontro. Quindi, a prescindere da ciò che leggerete, ci sarà un momento per parlare con altri delle vostre esperienze, conoscenze e dilemmi.
Non c'è impressione come la prima. La nostra era "È una cosa enorme!". Non appena siamo arrivati al BalnaNella sede della conferenza, ci siamo resi conto che i partecipanti sono tantissimi. In base ai numeri ufficiali forniti dagli organizzatori, eravamo più di 900. Non ho mai visto così tanti programmatori in un solo posto in vita mia. L'atmosfera mattutina era piuttosto sonnolenta, ma tutti e 900 siamo stati nutriti con la colazione e riportati a terra da un delizioso e forte caffè espresso.
Ma il caffè non è mai abbastanza per svegliare 900 sviluppatori di software. Avevamo bisogno di un discorso stimolante, in un ambiente stimolante. Ci sono stati alcuni minuti di discorso di benvenuto nella sala principale, seguiti dalla prima nota chiave della conferenza presentata da Bodil Stokke: "Programmazione, solo migliore". E aveva anche bevuto troppo poco caffè per la mattina. Il discorso è iniziato in modo assonnato, con una voce annoiata e roca. Fortunatamente, man mano che le diapositive andavano avanti, ha iniziato a svegliarsi e quando siamo arrivati a questa diapositiva, ci siamo svegliati all'istante. Questo ha reso la mia giornata indimenticabile.
L'immagine illustra anche le dimensioni della sala e degli schermi. Quello centrale aveva una diagonale di circa 10 metri e l'immagine era proiettata da un beamer di dimensioni impressionanti. Anche i due schermi "più piccoli" erano piuttosto grandi, ed è stato impossibile per me inserire nell'immagine gli altri due schermi sui quali scorreva continuamente il feed live di Twitter della #CraftConf. La tecnologia era impressionante. E non solo per le immagini ad alta definizione, ma anche per le strutture WiFi. Anche se a volte il loro server DNS non riusciva ad assegnare un indirizzo IP, o i lease scadevano troppo in fretta ed era necessario riconnettersi, sono comunque riusciti a ospitare più di 900 programmatori, il che probabilmente significa più di 2000 dispositivi. La copertura WiFi era buona su tutta la superficie della sede, indipendentemente dalla distanza dalle sale di presentazione o dal livello in cui ci si trovava. E quando c'era una connessione, funzionava piuttosto bene. Una chiamata Skype o una chiamata VoIP a un telefono fisso hanno funzionato ragionevolmente bene. Anche l'aggiornamento di alcune applicazioni sul mio Android è avvenuto senza problemi.
"La padronanza è capacità in un contesto". ha detto Dan North nel suo intervento (immagine in alto a sinistra). È stata una delle presentazioni più stimolanti e interessanti. P = p - i. Mi è piaciuta molto la sua passione per l'intero concetto e l'abilità con cui è riuscito a trasmetterci questa sensazione. Dan North avrà anche tenuto il discorso più stimolante della giornata, ma il ragazzo di Facebook (immagine in alto a destra) aveva il titolo più intrigante: "Lezioni dalla base di codice PHP di Facebook". Mi aspettavo di scoprire molte cose sui trucchi PHP, su come hanno superato alcuni limiti del linguaggio, su come hanno affrontato la concorrenza, il carico elevato e le architetture difficili. Invece ci hanno presentato il linguaggio di programmazione Hack e la macchina virtuale HipHop. Alla fine siamo rimasti con la triste sensazione che Facebook abbia semplicemente reinventato PHP e scritto un proprio linguaggio di programmazione, invece di affrontare i suoi problemi. Un discorso molto deludente.
Almeno Eric Evens ha alzato un po' l'asticella con il suo "Riconoscere il CAP alla radice, nel modello di dominio". (immagine in basso a sinistra). Sebbene personalmente abbia apprezzato il discorso, la maggior parte del pubblico si è persa dopo pochi minuti. Era un discorso piuttosto buono, ma bisognava avere una certa conoscenza di DDD per capirlo. L'ultimo intervento del primo giorno che ritengo meriti di essere citato è Testing the Hard Stuff and Staying Sane di John Hughes. Non mi piacciono o apprezzo particolarmente i discorsi su strumenti o framework, ma il suo framework di testing sembra molto interessante. La premessa è quella di generare scenari di test in qualche modo casuali che possano esercitare un'ampia varietà di percorsi attraverso l'applicazione. Un numero sufficientemente elevato di test di questo tipo finirà per verificare anche gli scenari più improbabili e, col tempo, scoprire bug nascosti e difficili da comprendere o riprodurre. Pur ammirando le premesse di questo strumento, sono scettico sulla sua utilità. Ma non è così, Controllo rapido è gratuito, in modo da poterlo testare e decidere autonomamente.
Dopo un primo giorno di conferenza così interessante, cosa poteva esserci di mattina presto per suscitare il nostro interesse? "Code del cazzo!"
... ovvero un discorso di Theo Schlossnagle sulle architetture basate sulle code di messaggi, sui problemi che hanno avuto e su come li hanno superati. È stato un intervento molto stimolante e anche piuttosto tecnico. Perfetto per il risveglio del secondo giorno.
Dopo di lui c'era Gerard Meszaros. Sì, lo scrittore di xUnit Test Patterns. Questo è stato probabilmente il momento più importante dell'intera conferenza. Partecipa raramente alle conferenze, quindi incontrarlo di persona è stata una grande opportunità per saperne di più sui test.
Dopo il suo intervento e alla fine della conferenza ho avuto la possibilità di parlare un po' con lui. Questa discussione è sfociata in una cena, con tutti i miei colleghi, lui ed Eric Evens in un ottimo ristorante di Budapest. Ho trovato Gerard una persona molto aperta e umile, sempre pronta ad aiutare e interagire con le persone interessate al testing e allo sviluppo del software in generale. Sfruttando al meglio questa opportunità, Syneto ha invitato Gerard Meszaros a Timisoara per assisterci per un paio di giorni con il nostro progetto e per tenere un discorso alla comunità locale. Ne parleremo più dettagliatamente in un prossimo post del blog.
Il resto della giornata è stato caratterizzato da vari interventi, tra i quali ne spiccavano due. In realtà mi aspettavo "Costruire su basi solide" di Nat Pryce e Steve Freeman. Avevo un video del discorso tra i preferiti da mesi, ma non sono mai riuscito a vederlo, quindi ero entusiasta di vederlo dal vivo. Purtroppo il discorso in sé è stato piuttosto deludente. Almeno per me. Mi aspettavo qualcosa di completamente diverso a partire dal titolo. È stato comunque bello vedere di persona le leggende che hanno scritto Goos.
D'altra parte, il discorso sulla consegna continua di Simon Hildrew del Guardian, intitolato "Consegna continua in modo continuativo è stato molto più di quanto mi aspettassi. Ha presentato strumenti di continuous delivery e una demo dal vivo che ha distribuito un aggiornamento al sito web del Guardian in tempo reale. Anche se questo tipo di sistemi non è particolarmente utilizzabile in molti tipi di applicazioni, per le applicazioni online distribuite sul web è un'ottima infrastruttura.
Mentre l'articolo sopra riportato rappresenta le mie impressioni personali, qui di seguito sono riportate alcune citazioni dei miei colleghi sulla CraftConf. Ottimo lavoro! per gli organizzatori, è stato un piacere partecipare.
Uno dei grandi vantaggi di partecipare a una conferenza come questa è la possibilità di incontrare di persona alcuni dei vostri mentori, persone che in qualche modo hanno dato forma alla vostra carriera. In questo modo si ha la possibilità di convalidare le proprie idee, condividere i propri pensieri e le proprie esperienze. La CraftConf aveva tutti gli ingredienti per un'esperienza indimenticabile.
È stata una grande terapia di gruppo alla CraftConf. E anche i pony e gli unicorni. Ho anche imparato come rendere la (mia) vita difficile e quella dell'utente più facile (UX).
Grandi persone e molti discorsi su cui dovrò riflettere in futuro. Una terapia per programmatori a cui ogni programmatore dovrebbe partecipare.