7 Novembre 2016

Intré Camp – 3 Novembre 2016

Giovedì 3 Novembre ci siamo presi tutti una pausa e abbiamo deciso di migrare nella bella località di Sarnico, precisamente all’hotel Cocca (un grande grazie al neo papà Ferdinando per la scelta) per confrontarci sui temi 2016 e 2017.

La mattinata

Dopo un ottimo caffè (con paste e brioches) di benvenuto, ci siamo diretti nella sala a noi dedicata.
Qui, dopo esserci accaparrate le credenziali di accesso ad Internet (altrimenti altolà chi va là fermi tutti 🙂 ) e posti a sedere,  abbiamo  iniziato la giornata, così organizzata:

  • La mattina
    1. Come è andato il 2016
    2. Gli obiettivi 2017
    3. Come ci organizziamo per l’apprendimento continuo
    4. Gilde, new era
  • Pausa pranzo
  • Il pomeriggio – Robot wars
    1. Robot wars: Perché
    2. It’s war!
    3. And the winners are…
  • Saluti

Per gli amanti dei paroloni e dell’italglese, la mattina è stata dedicata ad una sorta di retrospective aziendale, mentre il pomeriggio ad un’attività di team building 🙂

Come è andato il 2016

A rompere il ghiaccio è stato Francesco il quale ci ha ha presentato l’andamento positivo aziendale nel 2016, in termini di fatturato, nuovi clienti acquisiti e un ulteriore aumento del personale aziendale (sia sviluppatori che grafici). Va detto che il suo discorso ha infuso una grande carica e voglia di continuare su questa strada

Gli obiettivi 2017

Giulio, partendo dalle parole ottimistiche di Francesco, ha continuato sull’onda dell’analisi dell’andamento aziendale spostando il pallino più in là… nel futuro. Con lui abbiamo provato ad immaginarci come Intré può attivarsi per incrementare ulteriormente la propria immagine, forza, competenza e perché no, il fatturato. Come?

Da questo “come”, Giulio ha proseguito con il suo discorso portandoci come esempio quello di un equilibrista intento a passare da un grattacielo ad un altro, al di sopra di una fune.
Esempio che personalmente trovo azzeccatissimo, perchè Intré, e quindi ognuno di noi, deve essere vista come l’equilibrista, che per cercare di non cadere giù deve muoversi con molta cautela, ma al contempo con grazia cercando di stupire e far rimanere soddisfatti tutti coloro che stanno a guardare. Ancora meglio se si immagina questo equilibrista che cammina al confine di un’enorme bolla, che come nasce e può portare grandi momenti di profitto, può scoppiare.

Come può un equilibrista arrivare a compiere un’impresa del genere? Lavorando sodo e migliorandosi sempre più. Ritornando alla nostra realtà, ciò vuol dire continuare a portare avanti i progetti dei nostri clienti come sin’ora abbiamo fatto, ma allo stesso tempo tenere i radar sempre accesi su cosa e come il resto del mondo si muove, cosa è nuovo e può creare business, fare nostre nuove tecnologie e metodologie, crearci insomma una fune sempre più robusta e saperla attraversare cercando di stupire ancora di più i nostri spettatori 🙂
Ma come potremmo mai studiare e cercare di acquisire “punti esperienza” su quanto di nuovo il mondo offre? Magari creando gruppi di lavoro intenti a lavorare su qualcosa che di comune accordo trovano interessante? Magari presenziando a giornate dove qualcuno espone al mondo la sua soluzione, idea?
Parlo di GILDE e CONFERENZE , ed è qui che entra in gioco Francesco , che ci ha presentato una sua idea di vivere, far parte, e lavorare in gilda.  Ma cosa si intende in Intré per gilda?

Come ci organizziamo per l’apprendimento continuo

Per gilda intendiamo un gruppo di persone non per forza omogeneo nelle proprie skills, intente a studiare prima e impratichirsi poi relativamente ad un qualcosa che stuzzichi l’interesse comune dei suoi partecipanti, che sicuramente incrementa il know-how personale ed aziendale. Esempi di gilde passate sono lo studio del linguaggio funzionale Elixir, oppure lo studio del framework per lo sviluppo di app ibride Ionic.


Francesco
 ha quindi presentato la sua proposta di miglioramento delle gilde, una sorta di upgrade strutturale di questa attività. Secondo lui, va bene partecipare ad una gilda con l’intento di produrre un qualcosa, ma che non sia fine a sè stesso.

Tutto ciò che concerne una gilda, dal suo concepimento, a ciò che si potrebbe fare, alla  sua  evoluzione, dovrebbe ruotare attorno alle seguenti azioni (ri-switcho in inglese, che ci piace):

  • Watching
  • Feeling
  • Thinking
  • Doing

Per rendere meglio l’idea, ci ha poi mostrato delle card, sì, foglietti :), dove poter scrivere il tema della gilda, l’attività che potrebbe essere utile e perchè no, una stima su tale attività.
Ad esempio, tema della gilda: Stack Overflow, attività: dare una risposta corretta alle domande, tempo: 1h alla settimana.
Altro aspetto importante che il buon Francesco ha sottolineato è anche l’interdipendenza tra gilde, e la possibilità che la persona X appartenente alla gilda A possa dare un contributo alla gilda B che a sua volta trova di interesse quanto trattato e prodotto dalla gilda  A.
Personalmente dico BRAVO FRANCESCO, questo upgrade da  te proposto può aiutare Intré a costruirsi quel know-how che poi là fuori, sopra la fune, ci permetterebbe di continuare  a camminare a testa alta, con meno rischi di cadere.

Gilde, new era

Francesco ci ha dato il là, tra di noi ne abbiamo brevemente discusso, quindi si è passati all’azione.
Raggruppati attorno a 3-4 tavoli,  abbiamo inizialmente svolto un’attività di brainstorming dove ognuno di noi ha scritto su dei post-it le proposte di gilde (15 minuti di tempo).

 

Dopodichè è stato fatto un clustering delle varie idee, generando quella che a mio avviso può essere un’opera tranquillamente esponibile al TATE a Londra 🙂

L’autore di questo articolo ha deciso di far parte della gilda DEV-SKILL-BOOSTER (prendetevela con Johan per il nome 🙂 ) che si pone come obiettivo quello di appunto migliorare le nostre capacità e competenze di sviluppatori software( miglioramento qualità del codice scritto, come migliorare la parte di scrittura di test sul software). Per conseguire ciò, un modo può essere quello di provare a contribuire alla crescita della community di linguaggi di programmazione open-source, ad esempio la community di Node.Js (ah, c’è stata la Node Js Conference qualche settimana fa, e guarda un pò ci siamo stati e guarda un pò ho scritto un articolino, buttategli pure un occhio).

Tornando al nostro momento, ogni gildona si è quindi riunita per decidere cosa presentare alle altre come frutto appunto di un primo incontro. Noi della DEV-SKILL-BOOSTER abbiamo eletto il collega e omonimo Luca per esporre i vantaggi dell’utilizzo della feature dell’Hot reload di React, mostrando il video di un breve tutorial, ma d’impatto.

Poi è stata la volta delle altre 2 gilde, e devo dire che ogni presentazione è stata molto interessante e seguita da tutti…sviluppatori, grafici, pure da un membro del clan dei Thenn…

Finite le brevi presentazioni, è arrivato il momento della pappa, consumata nel ristorante dell’albergo. Un momento dove, oltre che godere dell’ottimo cibo (e vino 😉 ) abbiamo iniziato a capire come affrontare l’imminente guerra dei robot.
Nota: qualche mente geniale ha deciso che fossero i grafici i vari capetti squadra, e che  quindi fossero loro a determinare i membri delle varie squadre…

Robot wars: Perchè

Riposati e rifocillati (c’è chi si è pure fatto i selfie vista lago, ma disgraziatamente tali foto sono andate perse 🙂 ) siamo tornati in sala per affrontare al seconda metà della giornata…ROBOT WARS!

Prima di comporre le squadre, Ferdinando ci ha fatto la sorpresa delle nuove magliette di Intré. Vestiti di tutto punto e concentrati abbiamo iniziato la gara.
L’idea è quella di calarsi, suddivisi in team eterogenei (sviluppatori e grafici) e combattere in un’arena. Ogni squadra può programmare un robot in Java e farlo combattere con gli altri.
Come fare?
Tramite un simpaticissimo jar che ognuno di noi si è installato sulla propria macchina (tranquilli, c’è l’installer sia per Windows che per Mac), avevamo a disposizione tutto il necessario, e cioè un IDE per programmare usando Java il nostro robot e un’applicazione con una GUI per creare una nuova arena e testare le capacità del robot…ok, la smetto con i tecnicismi, non è forse il post adatto 😀

Detto ciò, sono state formate e v…fermi tutti. Prima di cimentarsi in questa guerra, ognuno di noi è stato omaggiato di una bellissima e fantasticissima (Johan docet) polo che potete ammirare nella prima foto di questo articolo…si ringrazia ancora una volta il buon Ferdinando che si è impegnato per averle.
Un enorme UAO GRAZIE anche per i tanto desiderati sticker con il logo aziendale, che personalmente ho già appiccicato sul mio pc, andandone parecchio fiero peraltro 🙂

Finalmente si può dire…via, it’s war!!!

It's war!

La guerra si è suddivisa in 3 sessioni, le prime 2 da 20 minuti, la terza da 30 minuti. Ogni sessione prevedeva un round composta di 10 turni di battaglia. L’ultima sessione prevedeva invece ben 3 round.
Ognuna delle 7 squadre (io ero parte della RedFox, assieme all’ibrido dev-des Roberto e il granitico Claudio, detto Fox), nel breve arco temporale doveva implementare il proprio robot come meglio reputava, servendosi ovviamente della API della libreria Robocode, compilarlo e magari testarlo avviando una piccola arena.
Per dirila  brevemente, l’implementazione era focalizzata sui movimenti del robot (avanti, indietro), far ruotare di x gradi il cannone, determinare la potenza di fuoco e gestire gli eventi scatenati dal rilevamento di altri robot, e quando si veniva colpiti.
Ovviamente ognuna delle squadre è partita da esempi di classi di Robot già fatte, quindi il tutto è stato meno drammatico del previsto.
Al termine di ogni sessione si doveva deployare, meglio caricare, in un path misterioso in un punto non ancora precisato ma gentilmente preparato e gestito dall’ottimo incredibile invincibile Daniele (Perci), dove era installato robocode e dove quindi Giulio poteva ogni volta creare l’arena e dare vita alla guerra importando i 7 compilati relativi ai robot.

La prima sessione è più che altro servita per capire come funzionasse il tutto, ma nonostante ciò si è deciso che facesse classifica… Il nostro robot è arrivato ovviamente ultimo. Io Roby e Fox ci siamo guardati ma non persi d’animo, qualcun’altro invece già si era gonfiato a mò di pavone per l’ottimo risultato raggiunto dal robot della sua squadra, cantando vittoria troppo presto 🙂

 

 

La seconda sessione di guerra ha subito messo in chiaro chi volesse andare a comandare (senza Rovazzi), e infatti le prime modifiche apportate a RedFox hanno portato ottimi risultati… Primi!

Il terzo turno, quello che ha previsto 30 minuti di coding e analisi tattica, ha portato ulteriori miglioramenti, ma non troppi visto il primo posto appena ottenuto… Forse ci ha fatto rilassare un pò troppo, perchè non bisogna mai accontentarsi!!!
Infatti il terzo, quarto e quinto turno di battaglia ha visto RedFox ottenere rispettivamente un quarto, terzo e ancora terzo posto. Come abbiamo ragionato noi, hanno ragionato anche gli altri 🙂

And the winners are..

Alla fine l’ha spuntata guarda un pò, la squadra di Giulio, che guarda un pò ha pensato e organizzato la competizione… Seguiranno ricorsi la TAR del Lazio 🙂

La sua squadra, composta da Marina e Valentina (designer, arrivata con l’ultima sessione di mercato 🙂 ), ha totalizzato ben 2 primi piazzamenti, rispettivamente negli ultimi 2 round:

Ai microfoni, Giulio si è un attimino pavoneggiato dichiarando “non se avete capito, ma questo risultato vuol dire fare dell’ottimo continuous improvement”.

Saluti

Finita la guerra, è arrivata anche l’ora di spegnere i pc, recuperare cavi, ciabatte, zaini… tutto insomma, e fare ritorno alle nostre case e alla nostra quotidianità.
Cari lettori, permettetemi di dire 2 paroline su questa giornata, che a mio avviso è stata vissuta come meglio non avrei potuto sperare, perchè vissuta assieme a colleghi che considero anche amici. Un gruppo che mai si abbatte davanti alle difficoltà, costituito da persone competenti e che vuole sempre migliorarsi.

Era il lontano 2009 quando entrai a far parte di questa realtà, e mai avrei pensato di arrivare ad oggi e poter ancora avere il privilegio di raccontare tutto ciò…

Al prossimo Intré camp, anzi…al prossimo post, AngularConf is coming!!!!!

Tag
Serendipità: viaggio alla scoperta del mondo incerto dello sviluppo software

Il racconto dell'esperienza di viaggio del collega Marco Testa nell'incerto mondo dei progetti software

Agile Venture Vimercate 2019

Il racconto della giornata di conferenza tenutasi a Vimercate.

Top
Ogni nostro Sprint ha l'obiettivo di massimizzare il Valore per l'utente finale