Deploy Value, Learn

Intré Camp 3 ottobre 2023 – Borgo Santa Giulia

12 Ottobre 2023 - ~ 12 minuti di lettura

Intré ha organizzato il terzo camp del 2023 il 3 ottobre e, a distanza di un anno, siamo ritornati in Franciacorta, precisamente nel ristorante albergo “Borgo Santa Giulia“.

La giornata è stata intensa e ricca di bei momenti di condivisione tra i quali hanno spiccato gli oramai famosi appuntamenti con la gildonferenza e la unconference. Nell’articolo vi forniremo un resoconto dei momenti più significativi del camp.

Introduzione

Francesco Rigillo, CEO di Intré, ha come da tradizione aperto l’Intré Camp fornendo a tutta l’azienda un riepilogo sul business e sui risultati raggiunti nel 2023.

Terminata la presentazione di Francesco la parola è passata agli ultimi colleghi arrivati: Marta Ghislandi, Federico Ghezzo, Giacomo Guaresi e Luca Parsani, quest’ultimo per la nostra Business Unit Betrusted. Benvenuti e buon lavoro!

Gildonferenza

Eccoci a uno dei due momenti più importanti di ogni Intré Camp. Il termine gildonferenza è una fusione delle parole gilde e conferenza, in buona sostanza si tratta una mini conferenza dedicata alle gilde durante la quale ogni gruppo condivide i risultati e le esperienze maturate nel percorso svolto nella propria gilda.

Fabio Fortini e Christian De Simone hanno moderato questa particolare mini-conferenza.

Gilda “DermatologIA”

Il team ha sviluppato un MVP, che ha presentato con successo al camp, di un’applicazione chiamata “Skin Scan” che utilizza l’intelligenza artificiale per diagnosticare le sette malattie più comuni della pelle. Questo strumento non mira a sostituire i medici, ma a fornire loro supporto. Gli utenti possono caricare foto della loro pelle e rispondere a un breve questionario per ricevere una diagnosi precisa tramite due modelli di intelligenza artificiale e un modello “XAI”.

Questa gilda è stata creata con l’obiettivo di applicare a un caso reale le conoscenze acquisite nelle precedenti “Intré BrAIn” e “Big Brain”.

Gilda “D3sign Patterns Reloaded”

Come suggerisce il nome, i veri protagonisti di questa gilda sono stati i design pattern comuni nel campo dello sviluppo software e architetturale. Durante gli incontri, il gruppo ha studiato vari design pattern (Abstract Factory, Command, Observer ecc.) dal libro “Design Patterns” (O’Reilly) e ha messo in pratica quanto appreso sviluppando un’applicazione di esempio in linguaggio Kotlin.

L’output principale di questa gilda è un repository GitHub dell’applicazione.

Gilda “OculusMED”

La gilda è nata con l’intento di sviluppare una prima versione di un’applicazione nel campo sanitario mettendo in pratica le conoscenze acquisite con l’IDE Unity 3D, Realtà Virtuale (VR), Realtà Aumentata (AR) e Realtà Mista (MR). Il progetto prende in ingresso un file DICOM, un formato standard per immagini diagnostiche mediche, e crea un modello 3D basato su di esso.

Durante la unconference dell’Intré Camp di ottobre il gruppo ha condotto una sessione informativa dedicata al progetto.

Gilda “i❤️3D”

L’apprendimento delle basi della modellazione 3D e l’implementazione di design in interfacce utilizzando i software Blender e Spline sono stati i due macro obiettivi di questa gilda. Dopo aver seguito un corso tenuto da un coach esterno, i partecipanti hanno lavorato autonomamente per realizzare ognuno un progetto.

Alla gildonferenza sono stati presentati i lavori e per la unconference è stata curata una sessione tecnica di approfondimento su Spline.

Gilda “Intrétainment 2”

La gilda ha proseguito il lavoro di sviluppo del progetto iniziato dalla precedente “Intrétainment”, un’applicazione per favorire il team building al di fuori dell’ufficio. L’obiettivo principale è stato migliorare il prodotto risolvendo problemi tecnici e introducendo notifiche via email per mantenere gli utenti informati.

Durante la presentazione fatta alla gildonferenza è emerso un secondo obiettivo: organizzare un evento aziendale chiamato “Intré Speed”, una gara di go-kart sponsorizzata da Intré a Meda a novembre, con l’obiettivo di coinvolgere il maggior numero di persone all’interno dell’azienda.

Gilda “i3 board game”

La gilda, ideale per gli amanti dei giochi da tavolo, ha avuto l’obiettivo di progettare un gioco completo che illustri i principi di un framework Agile (Scrum) in modo coinvolgente e divertente. Il processo di design è stato lungo e ha compreso le seguenti attività: brainstorming, prototipazione, playtesting e raccolta di feedback per migliorare il gioco.

Durante il camp del 3 ottobre è stato presentato il video promozionale di “Scrum Quest”, il gioco realizzato dai componenti della gilda.

Gilda “Ci rubano il lavoro!!1!!1!”

“L’IA ci farà perdere il nostro lavoro?”, “Diventeremo tutti Prompt Engineer?“. La gilda è nata per cercare una risposta a queste domande.
Come caso di studio il team ha realizzato una prima versione di un’applicazione per la gestione delle prenotazioni negli uffici adottando un’unica regola: utilizzare il codice generato da strumenti di intelligenza artificiale come ChatGPT, Google Bard e Midjourney in base alle richieste scritte. Non solo codice ma anche una Product Vision Canvas e la lista delle feature dell’applicazione ordinate tramite il metodo “MoSCoW”.

Durante l’unconference dell’Intré Camp, il gruppo ha organizzato una sessione di discussione sull’argomento dopo aver mostrato le chat utilizzate in ChatGPT, comprese di codice dell’applicazione.

Salta la gilda

Una volta l’anno ogni persona in Intré può decidere di non aderire a nessuna gilda per dedicarsi a percorsi di formazione individuali. Marco Loregian ha curato una breve presentazione a riguardo.

Per ulteriori approfondimenti sulla storia delle nostre gilde, visitate la pagina dedicata del sito aziendale che contiene, per ogni gilda:

  • una scheda descrittiva;
  • i partecipanti
  • il link a un eventuale artefatto (un video, un articolo, una puntata di podcast ecc.).

Best Summer Photo 2023

Quest’estate abbiamo inaugurato un nostro concorso fotografico interno, la Best Summer Photo 2023. La competizione è stata aperta a tutte le persone ed è stata un discreto successo, abbiamo infatti raccolto ben 30 foto scattate durante le ferie.
A settembre è stato aperto un sondaggio per decretare le tre foto più belle, e a salire sul podio sono stati:

  1. Miriam Civiero
  2. Marco Ranica
  3. Andrea Caglio

Congratulazioni ai vincitori e grazie ancora a tutti per aver partecipato e votato. L’iniziativa è piaciuta, magari ritornerà in versione natalizia…

Unconference

A questo Intré Camp di ottobre c’è stata una novità. A spiegare il funzionamento della unconference non è stato Alessandro Giardina bensì il sottoscritto, Luca Cruciani, supportato da Alessandro e Fabio Ghislandi.

Brevemente, la unconference è una conferenza in cui l’agenda viene creata al momento dai partecipanti stessi. Vige una sola legge e ci sono quattro principi e attraverso il marketplace, la fase in cui i partecipanti presentano le loro sessioni e posizionano il relativo post-it negli slot orari disponibili, si determina il vero contenuto. Terminate le presentazioni viene concesso del tempo, ai soli titolari dei talk proposti, per confermare o apportare modifiche al programma, con l’obiettivo di arrivare ad avere un’agenda che possa accontentare le richieste di tutti.

I prossimi paragrafi sono dedicati ai riassunti delle sessioni seguite da me e Marta Ghislandi.

Android developer vs iOS developer

Carlo Mandelli e Andrea Giovane hanno raccontato la loro esperienza con lo sviluppo di applicazioni native rispettivamente per iOS e Android, in stile “intervista doppia”.

Carlo e Andrea hanno paragonato i due mondi prendendo in considerazione:

  • Ambiente di sviluppo: Android Studio per quanto riguarda Android e Xcode per iOS. Per entrambi Carlo e Andrea hanno fatto una breve carrellata delle feature più utilizzate quali l’integrazione con git, i simulatori degli smartphone e come testare l’applicazione direttamente nello smartphone collegato al computer.
  • Pubblicazione di una app online: per Android si usa il Google Play Store, o Google Play, mentre per iOS si parla di Apple Developer Program (o Apple Developer Enterprise Program a seconda delle esigenze).  Sia il Google Play sia l’Apple Developer Program prevedono un abbonamento mensile o annuo.
  • Linguaggio di programmazione: per iOS si utilizza Swift, per Android la scelta ricade maggiormente su Java o Kotlin. Carlo e Andrea hanno mostrato una semplice app di demo per mettere a confronto gli approcci con entrambi i linguaggi, mettendo in risalto alcune differenze e caratteristiche in comune.
  • Come testare un’applicazione: Carlo e Andrea hanno mostrato brevemente come realizzare Unit Test, Integration Test e End-to-End Test all’interno degli IDE. Sia in Xcode sia in Android Studio hanno integrato ambienti ad hoc, per esempio tramite TestFlight è possibile distribuire a una lista di contatti l’applicazione da testare.
  • Gestione delle notifiche Push: per il mondo iOS Carlo ha spiegato come attivarle tramite il portale Apple, mentre Andrea ha parlato di Firebase, integrato anche per le app iOS.

ADM questo sconosciuto

Marco Loregian, Giacomo Giovenzana e Alessandro Giardina hanno tenuto una chiacchierata, fatta di domande, risposte e condivisione di esperienze, per rispondere al quesito: “Ma chi è e cosa fa un Agile Delivery Manager?”.

Per comprendere il ruolo, bisogna prima capire perché è nato. Grazie anche alla condivisione di Francesco Rigillo, abbiamo approfondito le necessità che hanno portato alla nascita del ruolo dell’Agile Delivery Manager.
Intré aveva bisogno di crescere da un punto di vista manageriale. L’organizzazione piatta che la contraddistingue mancava di una persona di riferimento che facesse da tramite tra le persone del team, i soci di Intré e il cliente.
L’ADM garantisce l’allineamento del progetto alle necessità del cliente ascoltandolo e parlando la sua stessa lingua.

Il loro valore-guida è il benessere delle persone di Intré, sia come singoli che come team. Se ne prendono cura attraverso l’ascolto attivo, aiutandoli a trovare la soluzione migliore per il loro percorso, personalizzando il sostegno in base alle necessità di ognuno.

Ma non fa solo questo.
In base alle loro caratteristiche personali e all’impegno che richiedono i 3/4 team che ognuno di loro segue, Marco, Giacomo e Alessandro si occupano anche di recruiting e piani di formazione.

Il ruolo dell’Agile Delivery Manager è molto più complesso di come è stato riassunto qui in poche righe, quindi gli dedicheremo un articolo sul nostro blog.

Oculus applicato a un progetto in ambito sanitario

Durante il percorso della gilda “OculusMED”, i partecipanti hanno sviluppato la prima versione di un progetto che rende un file DICOM (formato di file medico standard per immagini diagnostiche) un modello 3D.

Emanuele Bassis ha approfondito il lavoro fatto dalla gilda, mostrando come da una radiografia ad un polso sono riusciti ad ottenere il modello in 3D della porzione di osso in oggetto. La potenzialità dell’applicazione è che il medico può così “esplorare” l’osso con l’utilizzo della Realtà Virtuale, andando ad esaminarlo nel dettaglio.

Il programmatore epicureo

Marco Loregian ha raccontato la storia del celebre filosofo greco Epicuro, il primo a mettere al centro della vita umana la ricerca incessante del piacere, non per il gusto di godere, ma come virtù che conduce alla felicità.

Il pensiero di Epicuro si poggia su 3 cardini:

  1. Il vero amore è l’amicizia. La felicità consiste nel liberarsi da tutto ciò che provoca sofferenza, e che impedisce di raggiungere l’imperturbabilità dell’anima: l’atarassia.
  2. Non si è mai troppo giovani o troppo vecchi per filosofare. La filosofia non è speculazione teorica ma terapia, una medicina dell’anima per ottenere una condizione di benessere.
  3. Il fine della vita è essere felici.

Come ricercare il piacere? Epicuro propose la sua personale ricetta, il quadrifarmaco:

  1. Non temere gli dei
  2. Non temere la morte
  3. Sopportare e limitare il dolore
  4. Perseguire il piacere

Con un bonus: l’amicizia.

Cosa potremmo mai farcene oggi degli insegnamenti di Epicuro?

Pensando alle nostre vite e alle dinamiche lavorative quotidiane, quel quadrifarmaco non è affatto scaduto, tutt’altro.

  1. Non temere gli dei -> Di chi abbiamo paura o ci sentiamo di dover compiacere?
    A differenza degli antichi dei, il PO è una figura presente e interessata nel progetto per il quale dobbiamo lavorare con attenzione. Il nostro compito è fornire apertamente le nostre competenze per soddisfare le sue richieste, manifestando rispetto e coraggio nel processo. Siamo gli artefici del nostro destino e dobbiamo impegnarci non solo per ottenere i risultati desiderati, ma anche per creare le giuste condizioni di lavoro.
  2. Non temere la morte  -> Quali scadenze – note ma anche imprevedibili – ci spaventano?
    Le scadenze e i tempi sono inevitabili. La nostra collaborazione è temporanea, e prima o poi ci separeremo dal progetto sul quale lavoriamo. Utilizzando iterazioni, possiamo gestire meglio la complessità dei processi. Inoltre, alcune scadenze non devono essere ricercate; se averle non è dolore, non è neanche piacere.
  3. Sopportare e limitare il dolore -> Cosa ci fa stare male, e come possiamo affrontarlo?
    Le piccole distorsioni del cliente vanno metabolizzate: dopotutto se il lavoro fosse facile, il cliente non avrebbe bisogno di noi. I problemi temporanei vanno sopportati o tamponati, quelli grossi…restano al cliente quando non ci saremo più. Dobbiamo comunque dare il 100%.
  4. Perseguire il piacere -> Cosa dobbiamo abbandonare, e cosa dobbiamo limitare?
    Ci sono condizioni ideali e irrealizzabili che possono generare frustrazione e insoddisfazione. È più facile ottenere piccoli risultati e gratificazioni. A piccoli passi, senza fretta, si possono portare miglioramenti…anche se fino a un limite.

E l’amicizia? Impegniamoci nel mantenere buoni rapporti all’interno di ogni gruppo, è fondamentale per togliersi il peso della complessità. Un gruppo unito è più solido e più forte della somma dei singoli.

In conclusione, riprendendo le slide di Marco, forse un titolo del tipo “Epicuro agile: Lavorare agilmente per essere più sereni” sarebbe stato più azzeccato. Personalmente, e penso di parlare per tutti i presenti, siamo stati già felici e contenti così. Grazie Epicuro e Marco!

Automazione orticola con FarmBot Genesis

Giovanni Rigillo ha presentato “FarmBot Genesis“, un progetto per automatizzare l’agricoltura di precisione.
Brevemente, FarmBot Genesis è un progetto di Rory Aronson indirizzato alle “piccole” agricolture, dalle serre fino all’orto dietro casa. Il progetto è open source e nella sua filosofia copiarlo e riadattarlo non solo è permesso ma anche incoraggiato. Mentre è possibile acquistare il kit di montaggio completo sul sito di Farmbot Genesis, tutti i pezzi sono comunque standard o comunque facilmente reperibili sul sito, inclusa una documentazione particolarmente dettagliata.

Tra Giovanni e i partecipanti si è accesa un dibattito attorno l’effettiva adozione di FarmBot e perché no, sulla possibilità che Intré grazie magari a una gilda possa gestire un piccolo orto sfruttando questo progetto.

Gestire il rischio nello sviluppo software

Ferdinando Santacroce, coach del nostro Piano di Formazione interno con il corso su Test-Driven Development e gradito ospite fisso degli Intré Camp, ha curato una sessione interattiva sulla tematica della gestione del rischio nello sviluppo software. Partendo da un post-it “RISCHIO” posizionato al centro di un foglio, Ferdinando ha posto una semplice domanda:

Qual è per voi il rischio?

Sono emerse diverse risposte interessanti tra le quali riporto:

  • la complessità, intesa come complessità dei requisiti del progetto o complessità dell’architettura scelta;
  • le soft skill, come teamwork o leadership;
  • non rispettare il budget;
  • il rischio di burnout.

Cosa potremmo fare per mitigare i rischi?

Riprendiamo per un attimo il celebre modello Cynefin creato da Dave Snowden, ovvero un framework concettuale che aiuta a comprendere la complessità dei problemi e a determinare l’approccio decisionale più appropriato in base al contesto. Snowden classifica i problemi in quattro quadranti.

  • Ovvio – Tutto è noto, ogni problema è chiaro e se ne conosce la soluzione.
  • Complicato – Potrebbero esserci più soluzioni al problema, la relazione causa-effetto non è chiara e necessita di analisi. Si ha bisogno della consulenza di esperti di dominio per colmare le lacune.
  • Complesso – Analizzare il problema non è sufficiente, entrano in gioco altre variabili e fattori. Nei problemi complessi abbiamo tanti elementi che si condizionano l’un l’altro in modo non noto a priori.
  • Caotico – In questa categoria rientrano i problemi in situazioni di totale emergenza, si pensi come scenario a quanto purtroppo accaduto al World Trade Center nel 2001…scenario di confusione ed emergenza assoluti, non c’è ordine, non c’è tempo di fare analisi prima di agire.

La maggior parte dei progetti in cui siamo coinvolti (sviluppatori, designer, PO ecc.) sono classificabili come complessi. Insieme si è discusso sulle possibili azioni che si potrebbero compiere per mitigare i rischi e passare dal dominio complesso a quello complicato. Ferdinando suggerisce la lettura del “libro bianco” di Kent Beck “Extreme Programming Explained: Embrace Change“. Nel libro viene proposta una metodologia che abbraccia i cambiamenti invece di combatterli. Gli aspetti principali della metodologia sono:

  • adottare il Pair Programming, che porta a una maggiore qualità del codice scritto;
  • pianificazione flessibile ovvero decidere giornalmente ciò che va fatto in base alle priorità del momento;
  • design for change“: non trattare nessuna parte del progetto (comprese le specifiche) come immutabili, essere sempre pronti a modificarli quando necessario;
  • il codice è la documentazione: scriverlo affinché possa essere facilmente utilizzato come tale;
  • Unit Test: testare la singola unità del codice, rappresenta uno step essenziale per fornire codice funzionante.

Conclusione

Al termine della giornata ci siamo ritrovati nella sala principale per votare:

  • la miglior presentazione di gilda;
  • il miglior talk della unconference.

Ad aggiudicarsi il premio per la miglior presentazione durante la gildonferenza sono stati i partecipanti della gilda DermatologIA, mentre Marco Loregian e Christian De Simone hanno alzato la cop..ehm, la scatola con il premio per le migliori sessioni di unconference.

Scambiate le ultime considerazioni, è arrivato il momento di salutarsi e darsi l’arrivederci al prossimo Intré Camp che si terrà presso la cascina La Lodovica, a Vimercate, come già successo per il camp di febbraio.

Articolo scritto da