29 ottobre 2019, arrivano i primi freddi, le castagne, Halloween…e l’Intré Camp.
Nella bella cornice dell’agriturismoLa Camilla di Osnago, abbiamo passato una giornata molto intensa così organizzata:
- open conference;
- pranzo;
- la presentazione di Maurizio Bigoloni sullo stato del business e progetti di Siemens Digital Grid;
- la presentazione di Luca Cruciani sul lavoro svolto (e in svolgimento) per potenziare il brand aziendale lato sito e i canali social;
- il workshop sul nuovo Pay Off Learn / Code / Deploy Value;
- la presentazione dei risultati delle gilde concluse;
- la definizione di nuove gilde.
Nei successivi paragrafi potrete leggere un resoconto dei momenti caratterizzanti questo Intré Camp.
Open conference: i contenuti arrivano da noi stessi
Una open conference è una conferenza organizzata al momento.
In una prima fase, infatti, vengono proposti degli argomenti: chiunque può proporne uno, collocando un post-it sul foglio di una flipchart dove è rappresentata una griglia orari\spazi (solitamente tre aule).
Non solo proposte, ma anche richieste di aiuto su qualunque argomento o tematica.
Damiano ha ricordato come ci si dovrebbe comportare durante una open conference.
C’è una sola legge, la Legge dei due piedi, ossia che andiamo dove possiamo trarre/apportare valore, e quattro principi:
- quando comincia è il momento giusto;
- chiunque venga è la persona giusta;
- quando è finita, è finita;
- qualsiasi cosa accada, è l’unica che poteva accadere.
Come da tradizione sono arrivate diverse proposte di topic, tutte interessanti (trovate la foto al programma completo nella galleria di immagini seguente).
Di seguito trovate l’approfondimento di alcuni delle sessioni, cliccando sul link del blogpost dedicato.
- Algoritmi genetici: Marco Loregian espone alcune considerazioni frutto dello studio di questa tematica, proponendo una demo sviluppata in JavaScript.
- Sicurezza in Node.js: Davide Ornaghi, appassionato di cyber security, ha mostrato come sfruttare alcune vulnerabilità di tre librerie Node.js comuni.
- Pair Programming Zombie: tutti conosciamo e abbiamo applicato la pratica eXtreme Programming del Pair Programming; esistono svariati stili, ripercorriamoli assieme a Luca Marcato.
- Fare il doppio in metà tempo: Francesco Sacchi, armato di pane e salame, propone un caso d’uso di applicazione della teoria dei vincoli.
- Code Coverage & Mutation Testing: scrivere codice di qualità è importante, e lo anche la qualità dei nostri casi di test. Lorenzo Testa mostra alcuni strumenti per i linguaggi Java e JavaScript.
- Testcontainers: eseguire container Docker direttamente dal codice Java dei casi di test? É possibile grazie a questa libreria, presentata da Marco Rotondi e Luca Cruciani, corredando il tutto con una piccola demo.
Workshop sul nuovo payoff Learn / Code / Deploy Value
In occasione dei suoi primi vent’anni Intré si è regalata un nuovo payoff composto dai tre pillar Learn, Code, Deploy Value che sintetizza la mission aziendale (nel paragrafo Riferimenti trovate il link al video dell’intervista ai soci Fabio Ghislandi, Giulio Roggero e Alex Mufatti).
Ripercorriamo velocemente il significato delle parole che costituiscono il nostro slogan.
Learn
Intendiamo la dimensione dell’apprendimento, utile per l’azienda perché porta innovazione.
Per le singole persone è un percorso professionale che si realizza attraverso l’acquisizione di nuove competenze.
Una fase di apprendimento continua svolta in gruppo e non singolarmente, consentendo lo scambio di informazioni e la condivisione di nuove competenze.
Code
Scrivere codice è l’attività principale per Intré.
Vengono applicate tutte le tecniche dell’eXtreme Programming (TDD, Pair Programming ecc.), che consentono di realizzare software che sia il più possibile esente da bachi e al contempo facilmente mantenibile.
Deploy Value
Principalmente scriviamo software, perciò ogni riga di codice scritto è valore, tutto il resto è potenzialmente uno spreco di tempo, di denaro, di risorse ed energie mentali, perché si farebbero cose che non servono.
É importante bilanciare time to market e debito tecnico, cercando di rispettare le esigenze di business e mantenendo un software che abbia un costo di ownership e manutenzione ridotto. Per tutti i collaboratori di Intré l’unica cosa che conta è che il software funzioni. E’ l’unica misura di successo.
Al centro ci sono le persone, tutti i collaboratori (compreso il sottoscritto) che quotidianamente viviamo l’azienda.
Siamo noi gli attori coinvolti nel workshop organizzato da Fabio Ghislandi, Executive Agile Coach nonché partner di Intré, per capire quali siano in concreto le azioni e i comportamenti che ruotano alle tre parole dello slogan Learn \ Code \Deploy Value.
Organizzati in tre gruppi, abbiamo lavorato assieme per cercare di dare una definizione nostra per ognuno dei pillar del payoff, scrivendo su di un foglio frasi, parole e quant’altro fosse utile allo scopo. Il tutto moderato dai tre alfieri Ferdinando Santacroce, Emanuele Mantovani e Francesco Sacchi i quali ogni 15 minuti si spostavano da un gruppo all’altro per permettere che tutti contribuissimo per definire lo slogan nella sua interezza.
Nella galleria che segue trovate le foto di questo interessantissimo workshop e i tre cartelloni risultanti.
Presentazione dei risultati delle gilde e definizione di nuove
Durante un Intré Camp vengono presentati i risultati delle precedenti gilde, frutto del lavoro svolto in team con frequenza settimanale con incontri della durata di quattro ore ciascuno.
A questa tornata sono state cinque le gilde formate e portate avanti, di seguito un resoconto per ognuna.
Test-Write-Share
Una gilda nata con l’obiettivo di implementare una libreria condivisibile all’interno dell’azienda (e pubblicarla come software open source) con particolare attenzione all’utilizzo di tecniche di test come garanzia di qualità.
Per quanto riguarda il codice implementato, è stato alternato TDD puro e refactoring in sessioni di mob programming (una persona alla tastiera e gli altri che danno ordini).
É stata inoltre un’occasione per affinare l’utilizzo di tool di sviluppo messi a disposizione dal nostro IDE di riferimento (IntelliJ).
Sono stati approfonditi alcuni aspetti relativi al testing quali:
- utilizzo di JUnit 5 (nei progetti originali si usava un’altra versione) e capito meglio come si possono realizzare test parametrici;
- dry run del talk di Ferdinando Santacroce dal titolo Testare l’intestabile;
- prove con la libreria PITest per verificare la test coverage del codice attraverso il Mutation Testing.
Gumly
Una gilda composta sia UX designer che sviluppatori, con l’obiettivo di realizzare un prodotto per la experience transformation dei clienti, Gumly appunto.
In breve, l’applicazione ha lo scopo di facilitare il lavoro designer durante le fasi evolutive di un progetto consentendo di mappare, monitorare e migliorare l’esperienza degli utenti.
Attraverso questo tool sarà inoltre possibile:
- identificare e rappresentare le tipologie di utenti/personas facendone emergere le aree di azione e i bisogni;
- mappare i Customer Journey evidenziandone le interazioni e organizzandoli in macro flussi;
- ottimizzare i processi tenendo traccia di tutti i Pain point e di tutte le opportunità identificate durante la fase di ricerca qualitativa e quantitativa.
AgiLEGO
Obiettivo di questa gilda è produrre uno strumento a supporto dell’indottrinamento verso metodologie Agili.
Nello specifico sono stati realizzati dei video su singole cerimonie agili tramite la tecnica dello STOP-MOTION utilizzando, come scenografia e interpreti, dei componenti LEGO (R).
La realizzazione di un filmato è esso stesso essere parte del percorso di indottrinamento, sia come argomento trattato che come organizzazione del lavoro stesso.
Nello specifico la gilda ha trattato il momento di STAND-UP mettendo in scena gli errori in cui i componenti del team possono incorrere.
Di seguito gli step seguiti per la pianificazione della realizzazione del filmato:
- coordinamento dei lavori in accordo alla consegna del materiale ordinato;
- stesura del copione;
- suddivisione dei compiti tra shooting e montaggio ha permesso di migliorare i legami tra i componenti del team.
Inoltre lo studio della momento di STAND-UP per la stesura del copione ha permesso di migliorarne la conoscenza.
CobraML
Il nome di questa gilda è tratto dal film Fantozzi contro tutti, precisamente l’episodio della corsa ciclistica organizzata dal neo direttore, appassionato di bici da corsa, il quale obbliga tutti i dipendenti a partecipare.
Ben due gli obiettivi:
- acquisire una padronanza di base di Python;
- sfruttare la conoscenza di Python per apprendere i concetti fondamentali del Machine Learning.
Per mettere in pratica i concetti appresi è stato sviluppato uno script con lo scopo di mettere in comunicazione due sistemi (mediante API REST) trasformando i dati prima di salvarli.
Il primo contatto con il Machine Learning è avvenuto mettendo alla prova una libreria per il riconoscimento facciale: in poco tempo è stato realizzato un software in grado di riconoscere con successo i volti dei membri del nostro team all’interno di foto di gruppo.
Per approfondire la comprensione dei meccanismi implementati dalla libreria, sono stati studiati e implementati diversi approcci fondamentali: reti neurali, algoritmi genetici, alberi di decisione e reti bayesiane.
Open Source
Questa gilda si è messa in gioco collaborando a un progetto open source.
Il primo passo (non banale) è stato scegliere il progetto a cui contribuire, optando per Kibana, dopodiché selezionare un argomento su cui lavorare partendo dai problemi già noti.
Implementare la modifica richiesta è stato più facile del previsto, questo grazie alla buona organizzazione dello progetto e alla conoscenza delle tecnologie usate.
Un aspetto negativo ha riguardato la community, poco presente.
Nell’arco della durata della gilda sono state risolte due segnalazioni e questo è sicuramente un ottimo risultato, oltre che l’avere acquisito una maggiore consapevolezza di cosa voglia dire confrontarsi con il mondo dell’open source.
Al termine delle presentazioni, oramai a conclusione della giornata, abbiamo concentrato le ultime energie per proporre e definire nuove gilde.
Come ogni Intré Camp che si rispetti, sono arrivate davvero tante proposte, e dopo un momento di votazione (i risultati li trovate in una delle foto della galleria seguente), discussione e accorpamento di proposte simili, si è arrivati a un risultato. Quali gilde verranno presentate in futuro?
Lasciandovi con un’ultima galleria di fotografie scattate durante la giornata, vi salutiamo dandovi appuntamento tra quattro mesi con un nuovo articolo per un nuovo, entusiasmante Intré Camp!